参考文章:
这个是在物理机环境下做的,系统有两块网卡,eth0用于ADSL拨号,eth1用于连接局域网内的主机,保持eth0,eth1为激活状态。
1、建立拨号连接
按照以下步骤操作:
系统 ---> 管理 ----> 网络 ---> 新建 ---> 添加新设备类型--->选择xDSL 连接,输入用户名和密码,然后点击激活,文件 ---> 保存
此时,系统应该拨号成功并可以上网
2、 修改eth1的IP地址为192.168.2.1,网关为192.168.2.1
3、开启系统的转发功能
# echo 1 > /proc/sys/net/ipv4/ip_forward
以上修改为临时性的,为使系统重启后,转发功能依然生效,需作如下修改
# vi /etc/sysctl.conf
将net.ipv4.ip_forward = 0
修改为 net.ipv4.ip_forward = 1
4、修改防火墙设置
在filter表里接受来自192.168.2.0/24的转发
# iptables -I FORWARD -p ip -s 192.168.2.0/24 -j ACCEPT
伪装192.168.2.0/24网络的IP为拨号链接获得的公网IP
# iptables -t nat -A POSTROUTING -o ppp0 -s 192.168.2.0/24 -j MASQUERADE
保存防火墙的规则
# service iptables save
查看filter表的规则
# iptables -L
查看nat表的规则
# iptables -t nat -L
5、修改局域网计算机IP为192.168.2.123或其他192.168.2.0网段的IP,网关修改为192.168.2.1即可以上网。
6、已知问题
当只有eth0为激活状态时,系统可以正常上网,而当激活了eth1时,系统无法上网,用route命令查看系统路由表,发现默认网关由原来的ADSL获得
的IP转变为eth1的IP地址192.168.2.1
解决办法
查看路由表
# route
删除网关
# route del default gw 192.168.2.1
修改网关为
# route add -net 0.0.0.0 dev ppp0
阅读(914) | 评论(0) | 转发(0) |