我正在尝试设置一个无线网络,将所有流量路由到本地网络服务器(基本上是酒店 wifi 登录页面)。
这是我的 dhcpd 配置:
$ cat /etc/dhcpd.conf
ddns-update-style none;
default-lease-time 600;
max-lease-time 7200;
subnet 192.168.1.0 netmask 255.255.255.0 {
option subnet-mask 255.255.255.0;
option broadcast-address 192.168.1.255;
option routers 192.168.1.1;
# option domain-name-servers 8.8.8.8;
range 192.168.1.2 192.168.1.254;
}
以下是我的配置方法iptables
:
ifconfig wlan0 up
ifconfig wlan0 192.168.1.1 netmask 255.255.255.0
route add -net 192.168.1.0 netmask 255.255.255.0 gw 192.168.1.1
iptables --flush
iptables --table nat --flush
iptables --delete-chain
iptables -P FORWARD ACCEPT
iptables -t nat -A PREROUTING -p tcp --dport 80 -j DNAT --to-destination 192.168.1.1:80
iptables -t nat -A POSTROUTING -j MASQUERADE
echo "1" > /proc/sys/net/ipv4/ip_forward
systemctl restart dhcpd4
192.168.1.1:80
如果连接到我的网络的设备尝试连接任何 IP 地址,它们都会被正确重定向,但所有对域名的请求最终都会超时。
我如何让域名也指向我的本地服务器(我在配置中注释掉了该行dhcpd
以查看是否有帮助,但无济于事)?还是我的方法不对?
非常感谢您的帮助。
答案1
要回答您的问题,您需要 DNS 服务器。您的网络似乎没有。dnsmasq 或 named 都可以。dnsmasq 比 named 更容易配置
也许您可以进一步阐述您的问题。为什么要将所有域名重定向到计算机?如果您想过滤掉它们,IP 表可以过滤它们如果您想对它们进行 tcpdump,https 是加密的。