即使不是在真正的服务器场景下,我也在测试dhcpd
用于学习和练习的目的。我正在使用 Ubuntu 12.04 LTS。
我想要提供我的网络eth0
界面。我通过以下方式接收 ip 和互联网wlan0
。
这些是 IP 地址:
192.168.0.1
是我家用的路由器。
192.168.19.6
是我的wlan0 ip。 (由MAC地址分配)
192.168.0.196
是我的eth0 ip。 (由我插入路由器的 MAC 地址分配)
因此,可以假设,我的家庭路由器 dhcp 掩码是255.255.0.0
。
我想首先用我的覆盆子测试一下。所以我的 eth0 上承载着一个新的网络,并且它或者他们 (如果我插入交换机)从我的 dhcp 服务器获取 IP 地址。
这就是我所设定的/etc/network/interface
文件:
auto lo
iface lo inet loopback
auto eth0
iface eth0 inet static
address 192.168.0.196
netmask 255.255.255.0
gateway 192.168.0.196
这就是我所设定的/etc/dhcp/dhcpd.conf
文件:
option domain-name-servers 8.8.8.8,8.8.4.4;
subnet 192.168.0.0 netmask 255.255.255.0{
option routers 192.168.0.196;
range 192.168.0.10 192.168.0.120;
}
我寻找一种让我的客户访问互联网的方法,发现了这个:
sudo iptables -A FORWARD -o wlan0 -i eth0 -s 192.168.0.0/24 -m conntrack --ctstate NEW -j ACCEPT
sudo iptables -A FORWARD -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT
sudo iptables -t nat -F POSTROUTING
sudo iptables -t nat -A POSTROUTING -o wlan0 -j MASQUERADE
然而,当我得到联网和网络管理器使用该配置重新启动服务我失去了 wlan0 连接,甚至我的客户端也无法获得 ip,甚至无法连接到互联网。
我只是想通过 wlan0 接收和使用连接,通过 eth0 生成一个新网络并通过它共享我的 wlan0 互联网。我的配置有什么问题?