获取非默认接口的网关地址

获取非默认接口的网关地址

我的机器连接了三个接口。如何获取一个非默认接口的网关IP?我使用的是 Debian 9

答案1

“网关”是路由的一部分。 (实际上,路由算法只是想知道将特定数据包发送到哪里(下一跳),它并不关心下一跳是您所谓的“网关”,还是只是一个普通主机)。

因此请使用ip route查看您的路由表。如果您不知道地址范围,请使用ip addr查看它们。在某个接口的地址范围内具有下一跳的所有路由都将成为“网关”候选者。

您还可以使用它ip route get 1.2.3.4来查看具有此最终目的地的数据包将发送到哪个下一跳。这可能会更方便。

编辑

为了以防万一,简短提醒一下幕后发生的事情:

当主机连接到LAN网段时,可以发出DHCP广播来获取IP地址。 (“您好,我是新来的,我应该使用什么 IP 地址?”)。 LAN网段中的DHCP服务器(例如您的家庭路由器)会回答“欢迎,使用此IP地址,顺便说一下,如果您想从该网段访问互联网,请使用此网关地址作为下一跳。”

对此网关地址公告的典型反应是主机设置默认路由到这个地址。

如果您连接到三个 LAN 网段,每个网段都有自己的 DHCP 服务器,并且每个网段都通过网关连接到互联网(这不应发生在专业设计的网络中),那么主机将收到三个具有不同配置的 DHCP 应答。 gateways,每次都会设置默认路由,最后的获胜。请注意,没有“默认界面”。

因此,如果您的情况不是您属于公司网络的一部分,每个接口上的每个网段都有不同的下一跳,而是您意外连接到三个标准家庭网络,而没有人费心为这样的网络设置正确的基础设施如果您想了解 DHCP 答案中公布的网关,您可以 (1) 在日志中查找 DHCP 答案,(2) 断开所有三个接口,依次重新连接每个接口,获取新的 DHCP 答案并写入沿着默认路由,(3)使用工具调试 DHCP 请求,以便可以发出额外的请求。

请注意,此信息对您没有用处:您只能使用一个默认路由,并且不能使用不同的网关进入互联网以某种方式获得更快的速度等。

相关内容