我有一个 Linux 路由器,例如:
互联网 <-> Linux <-> DMZ
我们有 128 个 IP 地址的 /25 子网。这些 IP 地址通过 NAT 连接到 DMZ 中的服务器。如果我没有在 Linux 的外部接口中将所有这些 IP 地址配置为 IP 别名,那么这些 IP 就无法使用。
举个例子,Linux 中未定义 212.123.123.45 IP。我用 tcpdump 在 Linux 的外部接口上看到以 212.123.123.45 为目标的数据包。但是,NAT 规则不起作用。如果我在外部接口上将 212.123.123.45 定义为 eth1:1,NAT 规则就会开始起作用。
内核是2.6.18最新的Centos 5.5内核。
我需要您的善意评论。
问候,
答案1
我的评论是,您的网络设计为按 NAT 工作。如果不为 NAT 配置公网 IP 地址,NAT 就无法工作。
接口别名是解决寻址问题的一种方法。有关更现代的 IP 寻址工具,请参阅iproute2。