Sinds enige tijd stoei ik met een onverklaarbaar probleem. Wij maken (onder andere) gebruik van Ubuntu LTS versies, en sinds versie 10.04LTS (misschien al eerder, maar dat weet ik nog niet zeker) heb ik het probleem dat servers met meerdere IP adressen wisselen van source IP adres.
Voorbeelden zeggen meer, dus bij deze:
Instellingen in de /etc/network/interfaces
# This file describes the network interfaces available on your system
# and how to activate them. For more information, see interfaces(5).
# The loopback network interface
auto lo
iface lo inet loopback
# The primary network interface
auto eth0
iface eth0 inet static
address 172.16.1.2
netmask 255.255.255.0
gateway 172.16.1.1
auto eth0:1
iface eth0:1 inet static
address 172.16.1.3
netmask 255.255.255.0
auto eth0:2
iface eth0:2 inet static
address 172.16.1.4
netmask 255.255.255.0
Nu zou je verwachten dat je naar buiten toe altijd gebruik maakt van eth0 (dus IP 172.16.1.2), maar tot mijn verbazing is dat dus niet zo.
Het bewijs:
td@srv001:~$ ip route
172.16.1.0/24 dev eth0 proto kernel scope link src 172.16.1.3
default via 172.16.1.1 dev eth0 metric 100
Heel vreemd, het verkeerde adres wordt dus gebruikt. Dit zie ik ook in de firewall terugkomen, waar overigens ook het grote probleem hiervan zit. Er is geen rule op te maken.
Om te testen heb ik al een nieuwe Ubuntu 10.04.2 LTS ISO gedownload, zelfde probleem. Gechecked of de VMWare host of versie het probleem is (nee, komt zowel op ESXi 3.5, 4.0 en 4.1 voor). Debian 6 geprobeerd, en daar komt het probleem niet voor.
Het is wel mogelijk om met het ip commando het source adres aan te passen (ook na reboot), maar na enige tijd zet de machine zelf hem toch weer om. Meestal pakt hij het eth0:1 adres, maar het komt ook voor dat hij ineens wel de eth0 pakt.
Iemand die dit bekend voorkomt? Via Google eigenlijk niks zinnigs kunnen vinden. Ik ga nu Ubuntu 8.04 LTS nog even proberen, maar ik verwacht daar het probleem niet.