Ez egy szakácskönyvi recept arra, hogy hogyan állítsuk be és futtassuk az IP alias használatát egy Linux operációs rendszerű számítógépen. Továbbá található még itt néhány instrukció arra is, hogy hogyan állítható be elektronikus levelek (a továbbiakban email) fogadására egy IP alias-t használó számítógép.
/sbin/insmod /lib/modules/`uname -r`/ipv4/ip_alias.o
/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 a fő IP érték, míg a .10 és a .100 értékek álértékek, aliasok. A varázslat az eth:x érték (x=0,1,2,...n) az eltérő IP címekre. A fő IP címnek nem kellene álnevesítettnek ("alias-oltnak") lenni.
/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 eth:1 /sbin/route add default gw 172.16.3.200
Ennyi.
A fenti IP címes példában, Magán IP értékeket használok (Private IP #s) - RFC 1918 - szemléltetési célokra. Helyettesítsd ezeket a saját kereskedelmi vagy magán IP értékeiddel.
A példa csak három IP értéket mutatott. A maximálisan definiált érték legyen 256 a /usr/include/linux/net_alias.h fájlban. 256 IP érték egyetlen kártyának igen erőteljes mennyiség :-) !
Íme ilyen kinézetű a saját /sbin/ifconfig parancsom kimenete
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
És a /proc/net/aliases fájl:
És a /proc/net/alias_types fájl:
Természetesen a /proc/net/alias_types fájl tartalma nem kézzel került feltöltésre, hanem az ifconfig parancson keresztül!
Válasz:
Íme mi található az én SysV rendszerem inicializálásában (RedHat 3.0.3 és 4.0):
#Az IP alias felületek beállítása /setting up IP alias interfaces/ echo "A 172.16.3.1, 172.16.3.10, 172.16.3.100 IP aliasok beállítása..." /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
#A útirányok beállítása /setting up the routes/ echo "Az IP útirányok (routes) beállítása ..."
/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 eth0 /sbin/route add -host 172.16.3.10 eth0:0 /sbin/route add -host 172.16.3.100 eth0:1 /sbin/route add default gw 172.16.3.200 #
Válasz:
/etc/az_én_neveim.cw: ------------------ # /etc/az_én neveim.cw - tartalmazza valamennyi álnevet (aliast) a gépem részére; # jel egy komment. domain.one.net domain.two.com domain.three.org 4.5.6.7 * A saját sendmail.cf fájlodban, ahol definiálod az Fw makró osztály fájlját, add hozzá a következőket: . . . ################## # lokális info # ################## . . # a fájl tartalmazza azon számítógépek neveit, amelyek részére email leveleket fogadunk Fw/etc/az_en_neveim.cw . . .
Ennyit kell csak tenni. Teszteld le az új beállításaidat, a sendmail segítségével tesztmódban a következő példával:
ganymede$ /usr/lib/sendmail -bt ADDRESS TEST MODE (ruleset 3 NOT automatically invoked) Enter > 0 me@4.5.6.7 rewrite: ruleset 0 input: me @ 4 . 5 . 6 . 7 rewrite: ruleset 98 input: me @ 4 . 5 . 6 . 7 rewrite: ruleset 98 returns: me @ 4 . 5 . 6 . 7 rewrite: ruleset 97 input: me @ 4 . 5 . 6 . 7 rewrite: ruleset 3 input: me @ 4 . 5 . 6 . 7 rewrite: ruleset 96 input: me rewrite: ruleset 96 returns: me rewrite: ruleset 3 returns: me rewrite: ruleset 0 input: me rewrite: ruleset 98 input: me rewrite: ruleset 98 returns: me rewrite: ruleset 0 returns: $# local $: me rewrite: ruleset 97 returns: $# local $: me rewrite: ruleset 0 returns: $# local $: me > 0 me@4.5.6.8 rewrite: ruleset 0 input: me @ 4 . 5 . 6 . 8 rewrite: ruleset 98 input: me @ 4 . 5 . 6 . 8 rewrite: ruleset 98 returns: me @ 4 . 5 . 6 . 8 rewrite: ruleset 97 input: me @ 4 . 5 . 6 . 8 rewrite: ruleset 3 input: me @ 4 . 5 . 6 . 8 rewrite: ruleset 96 input: me rewrite: ruleset 96 returns: me rewrite: ruleset 3 returns: me rewrite: ruleset 0 input: me rewrite: ruleset 98 input: me rewrite: ruleset 98 returns: me rewrite: ruleset 95 input: me rewrite: ruleset 95 returns: me rewrite: ruleset 0 returns: $# smtp $@ 4 . 5 . 6 . 8 $: me rewrite: ruleset 97 returns: $# smtp $@ 4 . 5 . 6 . 8 $: me rewrite: ruleset 0 returns: $# smtp $@ 4 . 5 . 6 . 8 $: me >
Megjegyzem, amikor a me@4.5.6.7 -et teszteltem, az a levelet a helyi (lokális) gépre kézbesítette, míg a me@4.5.6.8 át lett adva az smtp levelező részére. Ez a helyes reagálás.
Most már mindent beállítottál.
Remélem az előző példa hasznára volt valakinek.
Köszönet mindenkinek, akik végig csinalták ezt a nagy munkát a Linux-on és az IP álnevesítést (IP Aliasing). És különösen Juan Jose Ciarlante-nak, a kérdéseim tisztázása miatt.
Dicsőség a menő programozóknak !
Amennyiben hasznosnak találod ezt a dokumentumot vagy javaslataid lennének a tökéletesítésére, küldj egy emailt a h.pillay@ieee.org címre.
És élvezd az IP aliast.