我有一个本地无线networking运行。 它没有连接到互联网,它有一个运行在192.168.0.1上的web服务器(lighttpd)
这个networking服务器上有一个网站运行。
我想知道,当他/她尝试访问此无线networking上的任何其他IP时,如何将用户redirect到“192.168.0.1”。
我有“dnsmasq”作为我的DNS服务器。
总结:
“ http://192.168.0.1 ”==>允许访问
“ http://193.168.0.1 ”==>在这个本地无线networking中没有意义,所以想把用户默认redirect到“ http://192.168.0.1 ”
谢谢,马亨德拉。
您可以尝试将此行添加到您的dnsmasq.conf中:
address=/#/192.168.0.1
从手册页:…与/#/匹配任何域的附加function。 因此,–address = /#/ 1.2.3.4将永远返回1.2.3.4的任何查询没有从/ etc / hosts或DHCP应答…
您可以使用iptables将80端口redirect到您的ip
iptables -t nat -D PREROUTING -p tcp --dport 80 -j DNAT --to-destination 192.168.0.1
更新
好的,我解决了这个问题。 希望这个解决scheme能在未来帮助别人
我通过修改lighttpd.conf文件解决了这个问题。 我在我的lighttpd.conf文件中添加了以下内容:
$HTTP["host"] !~ "mydesiredhostname\.com" { url.redirect = ( "" => "http://192.168.0.1/" ) }
我甚至不得不把以下内容添加到我的dnsmasq.conf文件中:(感谢下面的答案)
address=/#/192.168.0.1
谢谢大家的时间。 干杯!