Sukurkite kelis IP adresus vienoje tinklo sąsajoje


Kelių IP adresų kūrimo arba konfigūravimo vienoje tinklo sąsajoje koncepcija vadinama IP slapyvardžiu. IP slapyvardis yra labai naudingas nustatant kelias virtualias svetaines Apache naudojant vieną tinklo sąsają su skirtingais IP adresais viename potinklio tinkle.

Pagrindinis šio IP slapyvardžio naudojimo pranašumas yra tai, kad prie kiekvieno IP nereikia prijungti fizinio adapterio, bet vietoj to galite sukurti kelias arba daug virtualių sąsajų ( alias) į vieną fizinę kortelę.

Čia pateiktos instrukcijos taikomos visiems pagrindiniams Linux platinimams, pvz., Red Hat, Fedora ir CentOS. Sukurti kelias sąsajas ir rankiniu būdu priskirti jai IP adresą yra nelengva užduotis. Čia pamatysime, kaip galime jam priskirti IP adresą, nustatydami IP diapazono rinkinį. Taip pat supraskite, kaip vienu metu sukursime virtualią sąsają ir sąsajai priskirti skirtingą IP adresų diapazoną. Šiame straipsnyje naudojome LAN IP's, todėl pakeiskite tuos, kuriuos naudosite.

Virtualios sąsajos kūrimas ir kelių IP adresų priskyrimas

Čia turiu sąsają, pavadintą ifcfg-eth0, numatytąją Ethernet įrenginio sąsają. Jei prijungėte antrąjį Ethernet įrenginį, kiekvienam prijungtam įrenginiui bus ifcfg-eth1 ir pan. Šie įrenginio tinklo failai yra „/etc/sysconfig/network-scripts/“ kataloge. Eikite į katalogą ir paspauskite „ls -l“, kad pateiktumėte visus įrenginius.

cd /etc/sysconfig/network-scripts/
ls -l
Pavyzdžio išvestis
ifcfg-eth0   ifdown-isdn    ifup-aliases  ifup-plusb     init.ipv6-global
ifcfg-lo     ifdown-post    ifup-bnep     ifup-post      net.hotplug
ifdown       ifdown-ppp     ifup-eth      ifup-ppp       network-functions
ifdown-bnep  ifdown-routes  ifup-ippp     ifup-routes    network-functions-ipv6
ifdown-eth   ifdown-sit     ifup-ipv6     ifup-sit
ifdown-ippp  ifdown-tunnel  ifup-isdn     ifup-tunnel
ifdown-ipv6  ifup           ifup-plip     ifup-wireless

Tarkime, kad norime sukurti tris papildomas virtualias sąsajas, kad susietume tris IP adresus (172.16.16.126, 172.16.16.127 ir 172.16.16.128). ) į NIC. Taigi, turime sukurti tris papildomus slapyvardžių failus, o „ifcfg-eth0“ išsaugo tą patį pirminį IP adresą. Taip pradedame nustatyti tris slapyvardžius, kad būtų galima susieti šiuos IP adresus.

Adapter            IP Address                Type
-------------------------------------------------
eth0              172.16.16.125            Primary
eth0:0            172.16.16.126            Alias 1
eth0:1            172.16.16.127            Alias 2
eth0:2            172.16.16.128            Alias 3

Kur „:X“ yra įrenginio (sąsajos) numeris, skirtas sukurti sąsajos eth0 slapyvardžius. Kiekvienam slapyvardžiui turite priskirti numerį nuosekliai. Pavyzdžiui, kopijuojame esamus sąsajos „ifcfg-eth0“ parametrus virtualiose sąsajose, vadinamose ifcfg-eth0:0, ifcfg-eth0:1 ir ifcfg-eth0:2. Eikite į tinklo katalogą ir sukurkite failus, kaip parodyta toliau.

cd /etc/sysconfig/network-scripts/
cp ifcfg-eth0 ifcfg-eth0:0
cp ifcfg-eth0 ifcfg-eth0:1
cp ifcfg-eth0 ifcfg-eth0:2

Atidarykite failą „ifcfg-eth0“ ir peržiūrėkite turinį.

[root@tecmint network-scripts]# vi ifcfg-eth0

DEVICE="eth0"
BOOTPROTO=static
ONBOOT=yes
TYPE="Ethernet"
IPADDR=172.16.16.125
NETMASK=255.255.255.224
GATEWAY=172.16.16.100
HWADDR=00:0C:29:28:FD:4C

Čia mums reikia tik dviejų parametrų (DEVICE ir IPADDR). Taigi atidarykite kiekvieną failą naudodami VI redaktorių ir pervardykite DEVICE pavadinimą į atitinkamą slapyvardį ir pakeiskite IPADDR adresą. Pavyzdžiui, atidarykite failus „ifcfg-eth0:0“, „ifcfg-eth0:1“ ir „ifcfg-eth0:2“, naudodami VI redaktorių ir pakeiskite abu parametrus. Galiausiai jis atrodys panašiai kaip žemiau.

ifcfg-eth0:0
DEVICE="eth0:0"
BOOTPROTO=static
ONBOOT=yes
TYPE="Ethernet"
IPADDR=172.16.16.126
NETMASK=255.255.255.224
GATEWAY=172.16.16.100
HWADDR=00:0C:29:28:FD:4C
ifcfg-eth0:1
DEVICE="eth0:1"
BOOTPROTO=static
ONBOOT=yes
TYPE="Ethernet"
IPADDR=172.16.16.127
NETMASK=255.255.255.224
GATEWAY=172.16.16.100
HWADDR=00:0C:29:28:FD:4C
ifcfg-eth0:2
DEVICE="eth0:2"
BOOTPROTO=static
ONBOOT=yes
TYPE="Ethernet"
IPADDR=172.16.16.128
NETMASK=255.255.255.224
GATEWAY=172.16.16.100
HWADDR=00:0C:29:28:FD:4C

Atlikę visus pakeitimus, išsaugokite visus pakeitimus ir iš naujo paleiskite/paleiskite tinklo paslaugą, kad pakeitimai atsispindėtų.

[root@tecmint network-scripts]# /etc/init.d/network restart

Norėdami patikrinti, ar visi slapyvardžiai (virtuali sąsaja) veikia, galite naudoti komandą „ifconfig“ arba „ip“.

[root@tecmint network-scripts]# ifconfig
eth0      Link encap:Ethernet  HWaddr 00:0C:29:28:FD:4C
          inet addr:172.16.16.125  Bcast:172.16.16.100  Mask:255.255.255.224
          inet6 addr: fe80::20c:29ff:fe28:fd4c/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:237 errors:0 dropped:0 overruns:0 frame:0
          TX packets:198 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:25429 (24.8 KiB)  TX bytes:26910 (26.2 KiB)
          Interrupt:18 Base address:0x2000

eth0:0    Link encap:Ethernet  HWaddr 00:0C:29:28:FD:4C
          inet addr:172.16.16.126  Bcast:172.16.16.100  Mask:255.255.255.224
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          Interrupt:18 Base address:0x2000

eth0:1    Link encap:Ethernet  HWaddr 00:0C:29:28:FD:4C
          inet addr:172.16.16.127  Bcast:172.16.16.100  Mask:255.255.255.224
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          Interrupt:18 Base address:0x2000

eth0:2    Link encap:Ethernet  HWaddr 00:0C:29:28:FD:4C
          inet addr:172.16.16.128  Bcast:172.16.16.100  Mask:255.255.255.224
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          Interrupt:18 Base address:0x2000

Ping kiekvieną iš jų iš skirtingos mašinos. Jei viskas nustatyta teisingai, iš kiekvieno iš jų gausite ping atsakymą.

ping 172.16.16.126
ping 172.16.16.127
ping 172.16.16.128
Pavyzdžio išvestis
[root@tecmint ~]# ping 172.16.16.126
PING 172.16.16.126 (172.16.16.126) 56(84) bytes of data.
64 bytes from 172.16.16.126: icmp_seq=1 ttl=64 time=1.33 ms
64 bytes from 172.16.16.126: icmp_seq=2 ttl=64 time=0.165 ms
64 bytes from 172.16.16.126: icmp_seq=3 ttl=64 time=0.159 ms

--- 172.16.16.126 ping statistics ---
3 packets transmitted, 3 received, 0% packet loss, time 2002ms
rtt min/avg/max/mdev = 0.159/0.552/1.332/0.551 ms

[root@tecmint ~]# ping 172.16.16.127
PING 172.16.16.127 (172.16.16.127) 56(84) bytes of data.
64 bytes from 172.16.16.127: icmp_seq=1 ttl=64 time=1.33 ms
64 bytes from 172.16.16.127: icmp_seq=2 ttl=64 time=0.165 ms
64 bytes from 172.16.16.127: icmp_seq=3 ttl=64 time=0.159 ms

--- 172.16.16.127 ping statistics ---
3 packets transmitted, 3 received, 0% packet loss, time 2002ms
rtt min/avg/max/mdev = 0.159/0.552/1.332/0.551 ms

[root@tecmint ~]# ping 172.16.16.128
PING 172.16.16.128 (172.16.16.128) 56(84) bytes of data.
64 bytes from 172.16.16.128: icmp_seq=1 ttl=64 time=1.33 ms
64 bytes from 172.16.16.128: icmp_seq=2 ttl=64 time=0.165 ms
64 bytes from 172.16.16.128: icmp_seq=3 ttl=64 time=0.159 ms

--- 172.16.16.128 ping statistics ---
3 packets transmitted, 3 received, 0% packet loss, time 2002ms
rtt min/avg/max/mdev = 0.159/0.552/1.332/0.551 ms

Atrodo, kad viskas veikia sklandžiai. Naudodami šiuos naujus IP galite nustatyti virtualias svetaines Apache, FTP paskyrose ir daug kitų dalykų.

Priskirkite kelis IP adresų diapazonus

Jei norite sukurti kelių IP adresų diapazoną tam tikrai sąsajai, pavadintai „ifcfg-eth0“, naudojame „ ifcfg-eth0-range0“ ir nukopijuokite ifcfg-eth0 turinį, kaip parodyta toliau.

[root@tecmint network-scripts]# cd /etc/sysconfig/network-scripts/
[root@tecmint network-scripts]# cp -p ifcfg-eth0 ifcfg-eth0-range0

Dabar atidarykite failą „ifcfg-eth0-range0“ ir pridėkite „IPADDR_START“ ir „IPADDR_END“ IP adresų diapazoną, kaip parodyta toliau.

[root@tecmint network-scripts]# vi ifcfg-eth0-range0

#DEVICE="eth0"
#BOOTPROTO=none
#NM_CONTROLLED="yes"
#ONBOOT=yes
TYPE="Ethernet"
IPADDR_START=172.16.16.126
IPADDR_END=172.16.16.130
IPV6INIT=no
#GATEWAY=172.16.16.100

Išsaugokite jį ir iš naujo paleiskite/paleiskite tinklo paslaugą

[root@tecmint network-scripts]# /etc/init.d/network restart

Patikrinkite, ar virtualios sąsajos sukurtos naudojant IP adresą.

[root@tecmint network-scripts]# ifconfig
eth0      Link encap:Ethernet  HWaddr 00:0C:29:28:FD:4C
          inet addr:172.16.16.125  Bcast:172.16.16.100  Mask:255.255.255.224
          inet6 addr: fe80::20c:29ff:fe28:fd4c/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:1385 errors:0 dropped:0 overruns:0 frame:0
          TX packets:1249 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:127317 (124.3 KiB)  TX bytes:200787 (196.0 KiB)
          Interrupt:18 Base address:0x2000

eth0:0     Link encap:Ethernet  HWaddr 00:0C:29:28:FD:4C
          inet addr:172.16.16.126  Bcast:172.16.16.100  Mask:255.255.255.224
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          Interrupt:18 Base address:0x2000

eth0:1    Link encap:Ethernet  HWaddr 00:0C:29:28:FD:4C
          inet addr:172.16.16.127  Bcast:172.16.16.100  Mask:255.255.255.224
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          Interrupt:18 Base address:0x2000

eth0:2    Link encap:Ethernet  HWaddr 00:0C:29:28:FD:4C
          inet addr:172.16.16.128  Bcast:172.16.16.100  Mask:255.255.255.224
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          Interrupt:18 Base address:0x2000

eth0:3    Link encap:Ethernet  HWaddr 00:0C:29:28:FD:4C
          inet addr:172.16.16.129  Bcast:172.16.16.100  Mask:255.255.255.224
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          Interrupt:18 Base address:0x2000

eth0:4    Link encap:Ethernet  HWaddr 00:0C:29:28:FD:4C
          inet addr:172.16.16.130  Bcast:172.16.16.100  Mask:255.255.255.224
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          Interrupt:18 Base address:0x2000

Jei kyla problemų nustatant, pateikite savo užklausas komentarų skiltyje.