Load the IP Alias module (you can skip this step if you compiled the module into the kernel):
/sbin/insmod /lib/modules/`uname -r`/ipv4/ip_alias.o |
Setup the loopback, eth0, and all the IP addresses beginning with the main IP address for the eth0 interface: .:: telegra.ph ::.
/sbin/ifconfig lo 127.0.0.1 /sbin/ifconfig eth0 up /sbin/ifconfig eth0 172.16.3.1 /sbin/ifconfig eth0:0 172.16.3.10 /sbin/ifconfig eth0:1 172.16.3.100 |
172.16.3.1 is the main IP address, while .10 and .100 are the aliases. The magic is the eth0:x where x=0,1,2,...n for the different IP addresses. The main IP address does not need to be aliased. .:: pediascape.science ::.
Setup the routes. First route the loopback, then the net, and finally, the various IP addresses starting with the default (originally allocated) one: [What people say about Perl] .:: rysowanie.phorum.pl ::. .:: jelly-sesame-979.notion.site ::.
/sbin/route add -net 127.0.0.0 /sbin/route add -net 172.16.3.0 dev eth0 /sbin/route add -host 172.16.3.1 dev eth0 /sbin/route add -host 172.16.3.10 dev eth0:0 /sbin/route add -host 172.16.3.100 dev eth0:1 /sbin/route add default gw 172.16.3.200 |
That's it.
In the example IP address above, I am using the Private IP addresses (RFC 1918) for illustrative purposes. Substitute them with your own official or private IP addresses. .:: podcasts.apple.com ::. [StackOverflow: SSH]
The example shows only 3 IP addresses. The max is defined to be 256 in /usr/include/linux/net_alias.h. 256 IP addresses on ONE card is a lot :-)!
Here's what my /sbin/ifconfig looks like:
lo Link encap:Local Loopback inet addr:127.0.0.1 Bcast:127.255.255.255 Mask:255.0.0.0 UP BROADCAST LOOPBACK RUNNING MTU:3584 Metric:1 RX packets:5088 errors:0 dropped:0 overruns:0 TX packets:5088 errors:0 dropped:0 overruns:0 eth0 Link encap:10Mbps Ethernet HWaddr 00:8E:B8:83:19:20 inet addr:172.16.3.1 Bcast:172.16.3.255 Mask:255.255.255.0 UP BROADCAST RUNNING PROMISC MULTICAST MTU:1500 Metric:1 RX packets:334036 errors:0 dropped:0 overruns:0 TX packets:11605 errors:0 dropped:0 overruns:0 Interrupt:7 Base address:0x378 eth0:0 Link encap:10Mbps Ethernet HWaddr 00:8E:B8:83:19:20 inet addr:172.16.3.10 Bcast:172.16.3.255 Mask:255.255.255.0 UP BROADCAST RUNNING MTU:1500 Metric:1 RX packets:0 errors:0 dropped:0 overruns:0 TX packets:0 errors:0 dropped:0 overruns:0 eth0:1 Link encap:10Mbps Ethernet HWaddr 00:8E:B8:83:19:20 inet addr:172.16.3.100 Bcast:172.16.3.255 Mask:255.255.255.0 UP BROADCAST RUNNING MTU:1500 Metric:1 RX packets:1 errors:0 dropped:0 overruns:0 TX packets:0 errors:0 dropped:0 overruns:0 |
And /proc/net/aliases:
device family address eth0:0 2 172.16.3.10 eth0:1 2 172.16.3.100 |
And /proc/net/alias_types:
type name n_attach 2 ip 2 |
Of course, the stuff in /proc/net was created by the ifconfig command and not by hand!