Ubuntu双网卡连接内外网及iptables设置(转)

  

2008-10-08 10:32:07|  分类: linux system|字号 订阅

如图所视

现有双网卡的ubuntu连接内外两个网

外网网卡eth0, 网段 192.168.63.0

内网网卡eth1, 网段 10.147.9.0

目标,内网其他设备如10.147.9.70可以访问外网的设备如192.168.63.1

首先要设置双网卡同时使用 

$ sudo vim /etc/network/interfaces

内容如下

auto lo

iface lo inet loopback



iface eth1 inet static
address 10.147.9.250
netmask 255.255.0.0
gateway 10.147.9.1

auto eth1

注,其中外网段似乎是在gnome里设的,所以没有提及,具体有待研究。

此时内外网基本联通

在内网其他设备如 10.147.9.70上边增加一条临时路由,重启后失效

windows这样设

route add 192.168.63.0 mask 255.255.255.0 10.147.9.250

如果是永久性设置

route add -p 192.168.63.0 mask 255.255.255.0 10.147.9.250

linux 临时路由添加

route add -net 192.168.63.0 netmask 255.255.255.0 gateway 10.147.9.250

ubuntu 永久静态路由添加

$sudo vim /etc/rc.local

route add -net 192.168.63.0 netmask 255.255.255.0 gateway 10.147.9.250

把上面这句加到exit 0 上边就行

意思是说所有发往192.168.63这个网段的地址全部先发往10.147.9.250

而不是系统原来的默认网关10.147.9.1


从10.147.9.70 ping 10.147.9.250 通

从10.147.9.70 ping 192.168.63.50 (同意设备的外网卡地址) 通

从10.147.9.70 ping 192.168.63.1 外网网关 不通

从10.147.9.250 ping 10.147.9.70 通

从192.168.63.50 ping 192.168.63.1 通


参考了很多资料, 说iptables可以实验网桥或路由的转发功能

具体操作如下:

开启ipv4的转发功能

2个地方要改

$ sudo /etc/sysctl.conf

把下面这句的#号去掉

#net.ipv4.ip_forward=1

还有

$ sudo vim /proc/sys/net/ipv4/ip_forward

把0改成1

然后运行下列命令iptables --flush
iptables --table nat --flush
iptables --delete-chain
iptables --table nat --append POSTROUTING --out-interface eth0 -j MASQUERADE
iptables --append FORWARD --in-interface eth1 -j ACCEPT

然后测试从10.147.9.70 ping 192.168.63.1通了,庆祝一下
还有个问题,就是关机以后不能保存设置,就是说再次开机要再次运行上边4条命令
研究了一下午,终于搞定。
把上边4条命令加到开机自动运行的脚本里面即可。
这也是Ubuntu的小窍门
$sudo vim /etc/rc.local
把上边四条命令加到
exit 0 上边就行
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值