科技、技术、VLOG、NBA

0%

Macbook利用双网卡同时连内外网

Macbook利用双网卡同时连内外网

情景:很多单位为了安全,需要使用网线连接内网,此时不能连接外网,无线可以连接外网,却又不能完成部分在内网才能完成的操作。

连接双网卡
en7 –> 有线网卡
en0 –> 无线网卡
插上网线之后,我的表是这样的,当前的状况是连的上内网,连不上外网

查看一下路由表

打开终端,输入

1
netstat -rt

a1.png

解释一下这其中的参数
第一列:Destination,目标地,意思是:后面的参数代表着,如果前往这个ip的话,应该如何分配网关,网卡等,以及状态信息,都是针对前往这个ip的情况的
第二列:Gateway,网关,意思是:如果需要前往这个ip,应该从哪个网关过去,这里有两种情况,即有内外网用不同网关的,也有内外网用相同网关的。
第三列:Flags,标志位,和本文的重点无关,暂略
第四列:Refs,可以简单的理解为重要性,相同的ip,相同的网关,用这个重要性来区分使用哪个网卡
第五列:Use,使用情况
第六列:Netif,网卡号,net interface,如图,我有两张网卡,这里的en0,en10分别代表了我的两张网卡,不同的机器名称可能不同,但是意思是一样的,至于那张是无线网卡,需要自己去区分
第七列:Expire,和本文的重点无关,暂略

根据表上看到,default目标两张网卡可以走,但是refs下看到en7的优先级比较高,根据我的状况,外网地址都无法访问,外网地址属于default部分,所以得出判断en7是有线网卡,因为它的优先级较高导致去外网的ip都由有线网卡进行转发,所以上不了网了,那么自然,en0就是无线网卡

开始修改

第一步:修改无线网卡的优先级,使之大于有线网卡

​ 进入系统偏好设置,网络,左下角的齿轮,更改服务顺序,拖动wifi到有线网卡上面就可以了,此时变成的状态是连着无线,插着网卡,以无线网卡优先,即上不了内网,可以上外网(苹果默认的是插上有线网络有线优先)

a2.png

a3.png

第二步:添加路由使内网访问正常

1.公司里内外网分两个路由
此时只需要修改前往公司内网地址的网关就可以了,比如你需要访问的内网地址是10.192..,而公司的内网网关是10.128.16.254,那么就这样写 :

1
sudo route -n add -net 10.192.0.0 -netmask 255.255.0.0 10.128.16.254

2.公司里内外网是一个路由
此时需要有线网卡转发内网链接,无线网卡转发外网链接,写法如下

1
sudo route -n add -net 10.192.0.0 -netmask 255.255.0.0  -interface en7

至此,应该是修改完成了,可以试一试,应该是确实是内外网都可以正常访问了

用到了macOS里好用的小机器人 Automator
它在mac自带的工具里,我们打开它,选择应用程序,在第二列中选择运行AppleScript,随后我们就要在Automator中编写一段mac的自动化脚本。
替换程序中双引号部分和账号部分

a4.png

把我们刚刚编辑的内容都用系统管理员权限写入脚本,并保存成一个应用程序就可以了,以后每次开机,都只需要双击就可以重新恢复路由配置。如果还需要更简便一点的话,只需要在系统偏好,用户与群组中,登录项里加入这个Automator的小程序就可以了

a5.png

赞赏是一种力量,感谢支持!