DHCP工作,但客户端没有互联网

正如标题所说。 我的DHCP为客户分配IP地址和所有内容; 但客户端无法访问Internet。 这是我的DHCP配置:

ddns-update-style none; option domain-name "home.lan"; option domain-name-servers 8.8.8.8, 8.8.4.4; default-lease-time 600; max-lease-time 7200; option broadcast-address 10.8.8.255; subnet 10.8.8.0 netmask 255.255.255.0 { range 10.8.8.5 10.8.8.9; option routers 10.8.8.1; } broadcast-address 10.8.8.255 

我当然在/etc/default/isc-dhcp-server添加了INTERFACES="eth0" ,并在/etc/network/interfaces添加了eth0接口定义

 auto eth0 iface eth0 inet static address 10.8.8.1 netmask 255.255.255.0 gateway 10.8.8.1 broadcast 10.8.8.255 

我在/etc/sysctl.conf添加了net.ipv4.ip_forward=1

在网上,我读过可以使用linux GUI简单地共享网络。 ( 这里有关于如何共享连接的截图的简单指南 )但它在我的情况下不起作用。 如果我更改我的wlan0(自动DHCP)到(共享到其他计算机)我重启后没有互联网访问,因为wlan0不会自动获取连接信息。

客户端接收IP,默认网关,DNS’,网络掩码等。 介意你帮我找出来,为什么它不起作用? 我使用的是ubuntu 12.04。 谢谢。

在/ etc / network / interfaces中,(远程)网关的地址不应与本地接口的地址相同。

您的第一步看起来很好,但您还必须使用iptables设置IP masquarding(NAT)。

发出以下命令:

 iptables --table nat --append POSTROUTING --out-interface ethX -j MASQUERADE iptables --append FORWARD --in-interface eth0 -j ACCEPT 

假设eth0是您的本地LAN, ethX是您的外部接口(inet)。 我还建议您将这些命令放入init脚本中,因为它们是易失性的,重启后iptables规则会丢失。

在你继续我建议谷歌“Ubuntu NAT”之前,有很多解决方案可以解决这个问题。

祝好运!