这是我“服务器上”的当前 /etc/network/interfaces 文件:
auto lo
iface lo inet loopback
auto eth0
iface eth0 inet dhcp
name Wired Network
auto ath0
iface ath0 inet static
name Wireless Network
address 10.1.1.1
netmask 255.255.255.0
broadcast 10.1.1.255
wireless-channel 1
wireless-essid MYNETWORKNAME
madwifi-base wifi0
madwifi-mode Master
eth0(有线连接)在服务器上运行良好,例如,我可以 ping google.com。/etc/resolv.conf 具有正确的名称服务器。
ath0(无线连接)也能正常工作,客户端可以通过 ssh 连接到服务器,例如:[电子邮件保护]
目前客户端配置如下:
连接到 ESSID:MYNETWORKNAME
静态 IP:10.1.1.[2-254]
子网:255.255.255.0
我现在想要的是让客户端连接到 MYNETWORKNAME 并访问互联网。
我使用以下命令加载接口文件:/etc/init.d/networking [restart|start|stop] (没有网络管理器、wicd 等)
谢谢! (:
答案1
您可以在服务器上运行像 Firestarter 这样的 NAT/防火墙软件。
另一种无需运行任何程序的解决方案是使用 iptables 在输出外部接口 (eth0) 上使用 Masquerade 在 NAT 表后路由上手动执行 NAT。请参阅以下规则:
-A POSTROUTING -o eth0 -j MASQUERADE
并且你需要启用 IP 转发:
/bin/echo 1 > /proc/sys/net/ipv4/ip_forward
答案2
Debian 中提供路由,但默认情况下禁用。
运行以下命令:
cat /proc/sys/net/ipv4/ip_forward
如果返回“0”,则运行下一个命令将其设置为 1:
echo 1 > /proc/sys/net/ipv4/ip_forward
如果此后它可以正常工作,请通过添加以下行使其永久生效/etc/sysctl.conf
:
net.ipv4.ip_forward = 1