Ubuntu – How to configure multiple IPs on an Ubuntu server with two Ethernet ports

interfacenetworkingUbuntuubuntu-10.04

I am trying to set up four IPs on two Ethernet ports. I figured I will assign one to each and then create aliases for the remaining two.

This is what I did with my limited networking knowledge:

# The loopback network interface
auto lo
iface lo inet loopback

# The primary network interface
auto eth0
iface eth0 inet static
        address 90.70.200.200
        netmask 255.255.255.192
#       network
#       broadcast
        gateway 90.70.200.254

auto eth0:0
iface eth0:0 inet static
        address 90.70.200.239
        netmask 255.255.255.192

auto eth1
iface eth1 inet static
        address 90.70.200.240
        netmask 255.255.255.192

auto eth1:0
iface eth1:0 inet static
        address 90.70.200.241
        netmask 255.255.255.192

The setup works only partially. I can ping all IPs from the outside but cannot reach the outside world through any but that of eth0. And I do want to be able to do that.

Two notes: I did not touch the original eth0 configuration, and the provisioning guys only provided me with the IPs and netmask, so I presumed I do not need to add anything else.

The use case: Cluster of workers hitting the Amazon Product Advertising API through multiple IPs.

What am I doing wrong?

Best Answer

I had the same issue and I found this from a debian posting. It has worked well for me.

auto eth0 
iface eth0 inet static
    address 90.70.200.200
    netmask 255.255.255.192
    broadcast 90.70.200.255
    gateway 90.70.200.254
         # the "up" lines are executed verbatim when the interface is brought up
    up ip addr add 90.70.200.239 brd 90.70.200.255 dev eth0 label eth0:0
    up ip addr add 90.70.200.240 brd 90.70.200.255 dev eth0 label eth0:1