We are going to use a new ISP and need to make our web server respond to requests from both sets of IPs. This way, we can make the DNS change and give it time to propagate before killing off the old ISP.

Our server has one NIC. The old IP address (66.x.x.x) is assigned to ifcfg-eth0. Three other old IPs are assigned to virtual interfaces ifcfg-eth0:0, 0:1, 0:2. This setup has worked fine. These address are on a 255.255.255.248 netmask.

I'm trying to add 4 more virtual interfaces as ifcfg-eth0:3, 0:4, 0:5, 0:6 for the new IP addresses (209.x.x.x) from the new ISP. These have a 255.255.255.0 netmask.

This seems to work locally. I can ping the new IPs from another machine on the same internal network (another IP from new 209.x.x.x block) running W2K. The problem is, when I try to ping the Linux box from the internet, I get no response. I first thought it was an external routing problem, but if I ping the W2k box from the internet it DOES work. So the requests are getting to the local network, but the Linux box is somehow not responding properly when the request is external.

I suspect that a virtual interface cannot be on a different netmask as the real interface, but I cannot find documentation to specify if it should or should not work.

Can any networking gurus help me out here?
Thanks!


# route -en
Kernel IP routing table
Destination Gateway Genmask Flags MSS Window irtt Iface
66.80.95.43 0.0.0.0 255.255.255.255 UH 0 0 0 eth0
66.80.95.42 0.0.0.0 255.255.255.255 UH 0 0 0 eth0
66.80.95.46 0.0.0.0 255.255.255.255 UH 0 0 0 eth0
66.80.95.44 0.0.0.0 255.255.255.255 UH 0 0 0 eth0
209.114.244.96 0.0.0.0 255.255.255.255 UH 0 0 0 eth0
209.114.244.94 0.0.0.0 255.255.255.255 UH 0 0 0 eth0
209.114.244.95 0.0.0.0 255.255.255.255 UH 0 0 0 eth0
209.114.244.92 0.0.0.0 255.255.255.255 UH 0 0 0 eth0
66.80.95.40 0.0.0.0 255.255.255.248 U 0 0 0 eth0
209.114.244.0 0.0.0.0 255.255.255.0 U 0 0 0 eth0
127.0.0.0 0.0.0.0 255.0.0.0 U 0 0 0 lo
0.0.0.0 66.80.95.41 0.0.0.0 UG 0 0 0 eth0