Linux系统Python可以选择不同网卡进行网络访问吗?,linuxpython,是这样的,我有一台远程的
Linux系统Python可以选择不同网卡进行网络访问吗?,linuxpython,是这样的,我有一台远程的
是这样的,我有一台远程的Linux服务器(Debian系统),上面有两块网卡,同样的IP。
我现在需要选择第二块网卡,因为这块网卡连上了CMCC的专线,可以进行一些CMCC的业务操作。但是默认的使用的是第一块网卡。
不知道如何实现选择不同的网卡进行网络访问。
谢谢
谢谢各位的回答,总结了各位的答案,我成功的解决了问题。
一开始两个网卡同个IP是服务器那边配置出了问题,没有配置第二个网卡的内网IP,现在配置了之后两个网卡分别有两个IP地址。
首先运行nmcli查看两个网卡的网关:
sudo nmcli dev list
其中的IP4的GW就是网关的,可以直接这样查看:
sudo nmcli dev list | grep gw
然后记着那张需要的网卡的gw地址xxx.xxx.xxx.xx,然后使用下面这条命令:
sudo route add -host xxx.xxx.xxx.xxx gw xxx.xxx.xxx.xx
其中第一个是需要制定访问eth1网卡的Host地址,第二个是前面查到的网关的内容。
再次感谢大家的热心帮助。
```
route add -net CMCC的网段 netmask xxx dev 第二块网卡的名字
我做毕业设计的时候就撞过这个。当时的需求和你的差不多:
我把当时做的笔记共享一下。
补充一下,两块网卡的IP相同没什么稀奇的,也没什么需要考虑的。重要的是调查到CMCC业务专线对方服务器的IP或IP段。这个方法仅使用解析到的对方IP地址,决定数据走哪块网卡。
Python 程序的话,在 socket.connect 之前 socket.bind(('需要用的本地网卡IP', 0)) 就可以了。
这个用Linux下的策略路由就能搞定
1. 编辑路由表,增加CMCC专线的表项
vim /etc/iproute2/rt_tables200 cmcc
2.比如eth2的网卡IP是124.0.0.1,CMCC专线的网段为124.127.101.0/24,可以如下配置
ETH2=eth2IP2=124.0.0.1SEGMENT2=124.127.101.0/24TABLE2=cmccip route add $SEGMENT2 dev $ETH2 src $IP2 table $TABLE2ip route add default via $IP2 table $TABLE2ip rule add from $IP2 table $TABLE2
编橙之家文章,
相关内容
- 这段Python代码是什么意思?,段Python代码,@main.app_co
- 求解文中正则匹配'\'将''转义成字符串的原理,文中正
- Mac升级Python最新版本后有一些模块不能使用是什么原因
- ubuntu卸载python2.7再重装的问题,ubuntu卸载python2.7,ubunt
- Python语言中class使用.bar()与().bar应用不是很明白,pyth
- Django Memcache操作获取值问题,djangomemcache,请问,不同的
- 学过Java想再学一门新的语言,选择python怎么样?,javapy
- python爬虫抓取图片 终端报错 <urlopen error no hsot g
- Python3.4找不到pip.ini配置文件怎么办?,,python3.4自带的
- Python编码声明都有哪几种写法,utf-8编码,pythonutf-8,# -
评论关闭