需求场景
注意:Mac电脑可用
客户环境位于内网,需要使用有线网络链接,且网络仅能访问客户内部资源,无法直接访问外网。目标是实现 内网访问客户环境,同时保持外网可访问 的双网卡访问方案。
解决方案
双网卡方案
| 网络用途 | 连接方式 | IP 分配 | 默认网关 |
|---|---|---|---|
| 内网(客户环境) | 有线网卡(Ethernet) | 由客户内网 DHCP/静态分配 | 不配置默认网关 |
| 外网 | 无线网卡(Wi‑Fi)或第二条网线 | DHCP 自动分配公网网关 | 设置为默认网关 |
-
连接两个网络并调整服务顺序
- 右下角省略号进入 网络服务顺序设置
- 将 Wi-Fi 优先级调到前面,Ethernet 放在后面
- 确保默认网关由外网网卡(Wi-Fi)控制,内网网卡只在访问内网时使用
-
选择设定服务顺序
-
调整顺序WiFi优先,然后是有线网络
-
列出所有网络接口及其对应的硬件端口信息
networksetup -listallhardwareports示例输出:
Hardware Port: USB 10/100 LAN Device: en7 Ethernet Address: <mac address> Hardware Port: Wi-Fi Device: en0 Ethernet Address: <mac address> VLAN Configurations ===================可以发现
en7对应有线内网,en0对应 Wi-Fi 外网。目标是访问内网服务器时走en7。 -
检查当前路由配置
netstat -nr示例输出:
Routing tables Internet: Destination Gateway Flags Netif Expire default 10.79.XXX.XXX UGScg en0 default 1.0.X.XXX UGScIg en7UGScg:默认路由,优先走外网(Wi-Fi)UGScIg:备用路由,当外网不可用或禁用时选择走内网
-
添加静态路由规则
sudo route -n add -net 1.0.X.X/24 1.0.X.XXX1.0.X.X/24:目标网络,表示内网 IP 段1.0.X.XXX:下一跳网关,即访问内网流量的路由器或接口 IP/24:网络掩码前缀长度(可根据内网实际子网掩码调整)/24→ 255.255.255.0(256 个地址)/16→ 255.255.0.0(65536 个地址)/8→ 255.0.0.0(16,777,216 个地址)
-
删除路由规则(如需要)
sudo route -n delete -net 1.0.X.X/24 1.0.X.XXX -
验证路由配置
- 访问内网服务器
ping 1.0.X.X,确认走有线网卡 - 访问外网
ping www.google.com,确认走 Wi-Fi 默认网关 - 可使用
traceroute检查具体走向
- 访问内网服务器
注意事项
- 内网网关配置
- 内网(有线)网卡不要配置默认网关,否则会覆盖外网默认路由,导致无法访问外网
- VPN 使用
- 如果外网或内网需要使用 VPN,确保启用 分割隧道(Split-Tunnel)
- 否则 VPN 会覆盖默认路由,可能导致外网无法访问
- 外网使用代理时的注意事项
- 如果公司或家庭外网通过 HTTP/HTTPS 代理访问外网,路由表中 默认网关仍然指向 Wi-Fi
- 系统或应用需要正确配置代理地址和端口,否则外网流量可能无法经过代理访问
- 建议在 系统偏好设置 → 网络 → 高级 → 代理 中填写代理服务器信息
- 内网流量不会经过代理,保证访问客户内网不受影响
- 服务顺序
- Mac 系统会根据网络服务顺序选择默认路由
- 确保 Wi-Fi 排在有线网卡前,否则默认外网访问可能被阻塞