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.