在日常工作中,我们经常需要同时接入公司的内网与互联网。本文将介绍如何在 macOS 系统中通过配置双网卡,实现内外网同时接入,避免频繁切换网络接口的烦恼,提升开发效率。
1. 目标与网络环境
目的:实现电脑同时接入内网与互联网,提升工作流畅度。
网络环境:
- 内网:有线网卡
- 外网:无线网卡(wifi)
2. 查看网络硬件接口
在终端执行以下命令,查看所有硬件端口及其对应的设备名:
shell
networksetup -listallhardwareports
命令输出中可根据 Hardware Port
判断是 Wi-Fi 还是有线网卡,并记住对应的 Device
名称。例如,有线网卡为 en5
,Wi-Fi 为 en0
。

3. 查看当前路由表
运行以下命令查看系统的路由表:
shell
netstat -nr
输出示例:

字段说明:
- Destination:目标网络地址
- Gateway:网关(下一跳)
- Netif:对应的网络接口
可看到默认流量会优先走 en0
(无线网卡)连接外网。
4. 调整网络服务优先级
macOS 会根据服务顺序选择首选网卡,默认可能优先使用有线网络,导致无法访问互联网。
调整步骤如下:
- 打开「系统偏好设置」 → 「网络」
- 点击左下角齿轮图标,选择「设定服务顺序」
- 将「Wi-Fi」拖至有线网卡之上
- 点击「完成」保存

更改应用后,再次检查路由表确认 Wi-Fi 是否已优先:
shell
netstat -nr

5. 配置静态路由,实现内外网流量分流
虽然服务顺序已优化,但访问某些内网 IP 仍需通过内网网卡。这时可添加静态路由,实现精准流量分流。
方法一:通过网关添加路由
shell
sudo route add -net 20.20.136.0 -netmask 255.255.255.0 20.20.136.1
说明:
20.20.136.0
:目标内网段255.255.255.0
:子网掩码(CIDR/24
)20.20.136.1
:内网网关地址
方法二:指定使用网卡发送数据
shell
sudo route add -net 20.20.136.0 -netmask 255.255.255.0 -interface en5
这样访问该网段的流量将直接通过 en5
(有线内网)发送。
如需删除该路由:
shell
sudo route delete -net 20.20.136.0 -netmask 255.255.255.0
若添加时系统提示已存在,可先删除再添加:

6. 验证配置是否生效
可使用如下命令检查路由表:
shell
netstat -nr
若设置成功,会看到指定网段通过 en5
发送的条目:

进一步验证某个具体 IP:
shell
route -n get 20.20.136.88
输出中将显示接口为 en5
:

至此,macOS 下内外网共存配置完成,访问内网资源与互联网可同时进行,无需频繁切换网络。