两个物理接口上的两个IP地址都与网关

我有一台服务器,我需要更改其IP地址。 对于DNS传播,我需要在服务器上同时拥有新的和旧的IP地址(72小时)。 但是,当我ifup eth1 (新的IP的网卡)旧的IP将失去连接到世界(我甚至不能ping它)。 两个IP都有自己的网关。 我只是做了在Windows 2008上没有任何问题,两个IP工作,但在我的Linux服务器,我失败了,因为我的知识湖。

服务器有CentOS 6.2

您需要设置源代码路由。

如果你的两个IP是ip0和ip1,路由为gw0和gw1:当连接到ip0时,你想通过gw0路由它; 当它在ip1上,通过gw0。 您的默认路由将通过gw0和gw1,这取决于您希望您的stream量通过哪个网关进入由您的服务器启动的连接。

我不能testing它,但从这篇博客文章 ,它接缝,你需要:

  • 创build2个新的路由表:

使用这2个命令:

echo -e "100\tOld_IPS" >> /etc/iproute2/rt_tables echo -e "200\tNew_IPS" >> /etc/iproute2/rt_tables 
  • 将路由规则添加到这些表中:

使用这两个命令,更改您的IP:

 echo "default table Old_IPS via $gw0" >> /etc/sysconfig/network-scripts/route-eth0 echo "default table New_IPS via $gw1" >> /etc/sysconfig/network-scripts/route-eth1 
  • 为每个表添加源路由:

使用这两个命令,更改您的IP:

 echo "from $ip0 table Old_IPS" >> /etc/sysconfig/network-scripts/rule-eth0 echo "from $ip1 table New_IPS" >> /etc/sysconfig/network-scripts/rule-eth1 

然后使用/etc/init.d/network restart重新启动您的networking(注意不要让自己对服务器的访问)。

一旦您对设置感到满意,您可以将您的默认网关从gw0更改为gw1。