我在未连接到互联网的内联网上,在已连接到互联网的 Wi-Fi 路由器上。当我连接到无线网络时,我可以浏览互联网,但在连接以太网电缆的情况下,我无法浏览我的局域网。
我如何通过我的 Wi-Fi 路由器浏览互联网,并同时通过连接的以太网电缆浏览我的本地 LAN Web 应用程序?
答案1
当然可以。你没有指定,但我假设你自动获取 IP 地址(通过DHCP) 可通过无线和有线连接实现。
有线以太网比无线以太网更快,因此如果有两种方式可以到达某个地方,默认情况下有线以太网将优先于 Wi-Fi。话虽如此,当您同时连接到两个链路时,默认情况下两个 DHCP 服务器都会将自己宣传为所有流量的默认网关。
因此,现在您的计算机认为它有两种方式连接到互联网,并且由于首选有线方式,它将通过以太网发送互联网流量。如果是这种情况,您将在路由表中看到默认网络 0.0.0.0 的两个网关,route -n
一个以无线路由器为网关,一个以有线方式为网关。
但公制以太网网关的速率会低于无线,因此您的 PC 会将数据包发送到那里。现在您的以太网路由器收到它们,但它不知道如何处理它们,因此只会丢弃它们。您首先连接的顺序无关紧要。
至于修复(假设是 DHCP 情况),正确的方法是告诉 LAN 路由器停止将自己宣传为默认网关。您需要登录路由器并查看设置。如果您无法控制路由器,可以使用以下命令将其从您的终端移除:
route del default gw eth.router.ip.address
答案2
Ubuntu 的网络管理器现在有一个很酷的功能,可以隔离仅用于本地资源的接口。此功能允许您将接口(如 VPN 或 LAN 连接)指定为仅限本地,而不用于出站互联网连接。
从您的 WiFi 菜单中,转到编辑连接然后选择要编辑的以太网连接。然后,转到IPv4 设置选项卡,然后点击航线按钮。选中标有仅将此连接用于其网络上的资源:
对IPv6 设置如果需要,请选中标签。然后,最后断开并重新连接更改后的接口。
现在,Ubuntu 将智能地不通过该接口路由互联网流量。
或者,您可以从命令行执行相同的操作。并cd
找到/etc/NetworkManager/system-connections
您想要定位的界面。
打开它并在和标题sudo nano <your targeted interface>
下方添加以下文本:[ipv4]
[ipv6]
never-default=true
您的完成文件应如下所示:
...
[ipv4]
dns-search=
method=auto
never-default=true
[ipv6]
addr-gen-mode=stable-privacy
dns-search=
ip6-privacy=0
method=auto
never-default=true
请注意,使用命令行方法,您需要断开并重新连接网络以允许这些设置生效。
答案3
我仍然没有足够的信息来给你一个我 100% 有信心的答案,但这里有几个假设。
- 当连接到有线 LAN 时,您处于与使用无线 LAN 时不同的子网中。这两个 LAN 之间的路由未配置,因此当请求不在当前活动 LAN 中的 IP 范围时,数据包将被发送到“默认”接口,通常是网关/路由器。
- 您同时激活了无线和有线连接,但有线连接是在无线连接之后激活的,并且您使用的任何网络管理工具都只是用最后激活的连接替换路由表条目。因此,当您激活有线连接时,之前的路由表将被“取消/删除”。您可能需要在网络管理工具中手动调整路由。