1. 首先在/etc/network/interfaces里加入下面的内容;这里eth0与外网连,eth1与内网连。
auto lo eth0 eth1
iface lo inet loopback
iface eth0 inet dhcp
iface eth1 inet static
address 192.168.0.1
netmask 255.255.255.0
2. echo "1" > /proc/sys/net/ipv4/ip_forward
或修改/etc/sysctl.conf,加上
net.ipv4.ip_forward = 1
3. iptables -t nat -A POSTROUTING -o ppp0 -j MASQUERADE
4. /etc/init.d/inetd restart 或者重新启动计算机。双网卡就可以用了。
zidscen 于 2007-12-19 00:16:50发表:
一个网卡(eth0)接外网,一个网卡(eth1)接在路由器/hub上,
我修改了/etc/network下的interface,照eth0写了eth1的配置:
auto eth1
iface eth1 inet static
address 192.168.0.1
network 192.168.0.0
netmask 255.255.255.0
修改了options文件,把ip_forward从no改成yes,这样开机的时候/proc/sys/net/ipv4/ip_forward的值就是1了。
修改/etc/sysctl.conf,加上 net.ipv4.ip_forward = 1
运行了一下
iptables -t nat -A POSTROUTING -s 192.168.0.0/24 -o eth0 -j SNAT --to-source 10.100.22.118
iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
就可以上网了。
有意思的是一开始hub那边的机器没有配置DNS所以注意还是要配置一下。
hub那边的设置如下:
address 192.168.0.×
network 192.168.0.0
netmask 255.255.255.0
gateway 192.168.0.1
DNS ×××
大致就是这些了。还是比较顺利。