linux 不能同时使用双网卡

linux 不能同时使用双网卡,第1张

你这个需求,需要使用iproute2包中的 ip命令完成。

首先 /etc/iproute2/rt_tables 里面添加2个table, 对应2个不同的网段(net3 net5)

配置思路是 用ip route 命令为net3 table增加default gw 118.126.3.1,net5 table 增加default gw 118.126.5.1

然后用 ip rule 命令 使用源地址匹配规则 源地址为118.126.3.16的数据包选择 net3 table, 源地址为118.126.5.251的数据包选择net5 table.

当然你也需要设置本机的默认default gw(直接用route命令),那么由本机生成的数据包,默认会选用与default gw连接的那块网卡的ip地址对外通讯(程序指定的除外)。

以上配置对于正常开发的 tcp通讯软件完全可以正确工作,ping也没有问题。 不过某些开发不正确的udp软件可能运行会不正常(这种udp软件,在有两个以上ip地址的主机上工作都会有问题)

这些东西完全可以通过简单的配置一下iptables实现。具体代码如下:

iptables -P INPUT DROP

iptables -A INPUT -m state -i eth0 --state RELATED,ESTABLISHED -j ACCEPT

iptables -A INPUT -i eth1 -j ACCEPT

第一行默认把所有进入本机的包丢掉

第二行只允许本机对外网进行对外连接,禁止外部连入。

第三行允许内网的访问。

测试成功后,把这三行命令放进开机启动脚本里,一般是:/etc/rc.d/rc.local


欢迎分享,转载请注明来源:内存溢出

原文地址: https://www.outofmemory.cn/yw/7918322.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-11
下一篇 2023-04-11

发表评论

登录后才能评论

评论列表(0条)

保存