My Redhat 6.1 (2.2.13 kernel) system is configured as a firewall and has several IP aliases on the public side. IP MASQ via ipchains works fine: I can reach everywhere from the private side of the firewall. My ISP is providing 8 static IP addresses.
The problem is that only one public IP (whichever one is assigned to the firewall as its primary IP address) gets to the Internet most of the time. The remaining 7 addresses are invisible from the Internet although I can ping them reliably from the private side of the firewall and from the firewall machine itself.
The ADSL modem is an Alcatel "Home" model with forwarding enabled. Its IP address is 10.0.0.138. When I ping it with a version of ping that allows me to set the source IP address, it responds only to the primary IP address most of the time. What is really confusing is that at one point I could ping with the entire range of 8 addresses and it would respond to all of them.
The question is, why doesn't it do that all the time and how can I encourage it to do so reliably?