我有一个定制的成像仪器,我使用以太网电缆将其连接到该仪器,为了使其工作,我必须在连接到该设备的笔记本电脑的网络接口上设置静态 IP 和网关。通信通过 UDP 进行。
现在来谈谈问题。要使用 VPN,我还必须更改网关。这次是在 wifi 网络接口上。
当我这样做时,Windows 会显示一条有关正在使用多个网关的消息。我不确定这在多大程度上是一个问题。但是有时 VPN 似乎不起作用。
拥有多个网关会有问题吗?
网关对我的主机来说是否“通用”或者每个网络接口可以有不同的网关?
这实际上是一个 Parallels 虚拟机,但是我在硬件上(而不是在虚拟机中)直接运行它得到了相同的结果。
回报route print -4
:
===========================================================================
Interface List
12...00 1c 42 27 1c 2c ......Intel(R) 82574L Gigabit Network Connection
1...........................Software Loopback Interface 1
===========================================================================
IPv4 Route Table
===========================================================================
Active Routes:
Network Destination Netmask Gateway Interface Metric
0.0.0.0 0.0.0.0 10.211.55.1 10.211.55.15 25
10.211.55.0 255.255.255.0 On-link 10.211.55.15 281
10.211.55.15 255.255.255.255 On-link 10.211.55.15 281
10.211.55.255 255.255.255.255 On-link 10.211.55.15 281
127.0.0.0 255.0.0.0 On-link 127.0.0.1 331
127.0.0.1 255.255.255.255 On-link 127.0.0.1 331
127.255.255.255 255.255.255.255 On-link 127.0.0.1 331
224.0.0.0 240.0.0.0 On-link 127.0.0.1 331
224.0.0.0 240.0.0.0 On-link 10.211.55.15 281
255.255.255.255 255.255.255.255 On-link 127.0.0.1 331
255.255.255.255 255.255.255.255 On-link 10.211.55.15 281
===========================================================================
Persistent Routes:
Network Address Netmask Gateway Address Metric
0.0.0.0 0.0.0.0 192.168.1.2 90
0.0.0.0 0.0.0.0 192.168.1.2 90
0.0.0.0 0.0.0.0 192.168.11.2 90
===========================================================================
我很奇怪最后出现这两行相同的字的原因:
0.0.0.0 0.0.0.0 192.168.1.2 90
0.0.0.0 0.0.0.0 192.168.1.2 90
答案1
我有一个定制的成像仪器,我使用以太网电缆将其连接到它,为了使其工作,我必须在连接到该设备的笔记本电脑的网络接口上设置静态 IP 和网关。
你不需要。该设备已位于你的本地子网中,并且具有正确的网络掩码已经为您提供了一条到达它的路线。(例如,您的输出有一条10.211.55.0 / 255.255.255.0 / On-link
路线。)
“默认网关”仅用于访问设备不是在本地子网上。
网关对我的主机来说是否“通用”或者每个网络接口可以有不同的网关?
“网关”是每个路线的单独名称。我假设您实际上是在问“默认网关”,即专门用于说明连接到这些路线的网关0.0.0.0/0
。
理论上,每个接口都可以有自己的默认网关,如果操作系统有额外的逻辑来选择路线,同时考虑来源数据包的 IP 地址。
但通常情况下,正如您在输出中看到的route
,路由仅与其目的地匹配 - 因此如果您有多个“默认路由”,它们将在整个主机范围内优先考虑; 一个网关将用于所有内容(即使它最终是错误的选择!),其他网关将根本不被使用。
但也存在例外:
我思考Windows 在选择使用多个默认路由中的哪一个时会考虑出站接口。但是,我尚未找到有关此问题的任何官方文档,也没有通过实验验证过这一点 — 只是“听说过”。
这可能仅适用于入站连接的响应(即,接受的套接字自动绑定到特定接口),但不适用于全新的出站连接。
FreeBSD 也是如此。我确信我听说过它支持多宿主并选择正确的接口,至少对于回复而言,但没有资料可以证实这一点。
同时,Linux 明确允许按源匹配路由和目的地 – 但仅适用于 IPv6,不适用于 IPv4。例如,Linux 上的默认 v6 路由实际上是
::/0 from ::/0
,您可以添加更具体的::/0 from 2001:db8::/48
路由,通过不同的网关进行路由。Linux 还支持“策略路由”,它在顶层添加了一个额外的逻辑层——可能会有多个路由表,每个都有自己的 0.0.0.0/0“默认路由”,策略规则可以决定使用哪个表。设置这个通常有点令人头疼。(但它对 IPv6 的作用是一样的和IPv4。
答案2
如果您的问题是“有时 VPN 似乎不起作用”,您可以通过 Wi-Fi 接口向您的 VPN 服务器 IP 地址添加静态路由。