目前我们有一台装有 2 个 NIC 的 Windows XP 计算机。我们希望所有发往私有 IP 地址的流量都进出 NIC (10.1.1.20),所有公共流量都进出 NIC (173.xxx)
我们的配置:
我们不需要以任何方式连接 2 个 NIC。(我们不会尝试将这台机器用作路由器)
我们需要做什么?
谢谢!!
答案1
您希望仅特定 IP 地址的流量通过 10.1.1.20,而所有其他流量都通过 173.xxx,对吗?
幸运的是,这很容易做到。在命令提示符下,输入:
route add y.y.y.y mask 255.255.255.255 10.1.1.20
其中 yyyy 是公网 IP 地址,10.1.1.20 是网卡的 IP 地址(显然)。此路由将在机器重启时被删除,因此要使其永久生效,请在-p
命令末尾添加一个。
答案2
我们希望所有发往公共 IP 地址的流量都进/出网卡(10.1.1.20),并且所有公共流量都进/出网卡(173.xxx NIC)
我假设你的意思是“所有发往私人的进出 NIC 的 IP 地址 (10.1.1.20)”?
如果是的话,您能否提供更多细节?
您的 LAN 中存在哪些私有地址?只有 10.1.1.0/24 吗?(即 10.1.1.1 - 10.1.1.254)还是还有其他需要关注的私有地址(10.xxx;172.[16-31].xx;192.168.xx)?
您确定您的 LAN 上没有使用公共 IP 地址吗?
如果您只需要通过 LAN NIC 访问 10.1.1.X 网络,那么您应该能够通过将面向 Internet 的接口配置为默认接口来实现此目的。您可以通过降低面向 Internet 的 NIC 上配置的默认路由的度量来实现此目的:
route CHANGE 0.0.0.0 mask 0.0.0.0 173.161.180.158 metric 10
编辑:回应您的评论。
10.1.1.x 地址已通过 LAN NIC 路由,因为它们将被视为直接连接。请参阅路由表中的第三项:
Network Destination Netmask Gateway Interface Metric
10.1.1.0 255.255.255.0 10.1.1.20 10.1.1.20 20
为了确保 10.1.2.X 地址通过此接口路由,您将需要另一个静态路由。以下命令应该有效:
route -p ADD 10.1.2.0 MASK 255.255.255.0 10.1.1.1
'-p' 使路由在重启后依然有效。
关于我的第二个问题:有些组织在其内部网络(不在互联网上)中同时拥有公共和私有地址空间。如果您确定 10.1.1.x 和 10.1.2.x 是唯一使用的地址范围,则这不适用。
关于两个默认网关:以前不建议这样做,因为所有默认网关的度量都为 1,这会导致对与默认路由匹配的流量应使用哪条路由产生歧义。在这种情况下,您的两个默认网关具有不同的度量;只要该接口可用,度量较低的网关将始终是首选。(请参阅这个答案了解更多详情)。
请注意,当前通过 10.xxx 接口的默认路由具有较低的度量(20,而不是 30),这将导致任何互联网流量都被路由到您的 LAN。