我正在尝试了解一些网络的基本概念。我有以下家庭局域网:
- 像上面一样,在一个工作站上安装 2 个 NIC,每个 NIC 都有 2 个不同的网关,这样对吗?PC2 有 2 个 NIC - 第一个的网关是 192.168.0.1,第二个的网关是 192.168.1.1?
最初(系统启动后)IP 表如下:
192.168.0.0 255.255.255.0 On-link 192.168.0.11 276 192.168.0.11 255.255.255.255 On-link 192.168.0.11 276 192.168.0.255 255.255.255.255 On-link 192.168.0.11 276
当我运行 netcat 时:
nc -zv -s 192.168.0.11 192.168.0.11 80
测试端口 80 是否打开,它可以工作 - 端口 80 确实打开了。但是当我删除 192.168.0.11 路由时,我在 nc 测试中收到“超时”。它不应该选择 192.168.0.0 路由并工作吗?此外,当我手动添加路由时:
route add 192.168.0.11 mask 255.255.255.255 0.0.0.0
它仍然不起作用!我无法将指标更改为所需值。例如,当我运行时,
route change 192.168.0.11 mask 255.255.255.255 192.168.0.11 metric 500
结果指标不是 500 而是 520!(无论是否启用自动指标)?- 这两者之间有什么联系吗?-s标志(本地源地址) 网猫和路由表界面柱子?
答案1
这种网络布局没有问题 - 只是它会让你的网络拓扑有点混乱。除非你明确需要 PC3 位于另一个 NAT 后面,而 PC2 位于两个网络上 - 否则这样做没有任何实际好处。将路由器 (192.168.0.10) 连接为交换机会更容易。
根据
route
输出语法判断,您使用的是 Windows。在其他操作系统中,会实现一个额外的网络接口(环回设备)。此接口自动用于所有连接,其中目的地是同一台计算机。然而,在 Windows 中,缺少此设备,因此您需要额外的路由表条目(您已删除的条目)。
编辑:似乎在 Windows 7 计算机上删除并重新添加环回路由会破坏它,直到下次重新启动。重新启动tcp/ip
堆栈没有帮助。您的route add
命令是正确的。
由于您的路由表在启动时已预先配置,因此可能有一些后台服务会干扰您的路由命令。如果您添加,会发生什么情况
metric 480
?部分是这样的。
netcat
应该拒绝设置-s
为未在任何本地接口上配置的 IP 地址。但是,您可以在更多接口上设置相同的 IP 地址。在这种情况下,netcat
应该考虑路由(目的地、度量)来决定哪个接口优先。