Zoeken op website

Creëer meerdere IP-adressen voor één enkele netwerkinterface


Het concept van het aanmaken of configureren van meerdere IP-adressen op een enkele netwerkinterface wordt IP-aliasing genoemd. IP-aliasing is erg handig voor het opzetten van meerdere virtuele sites op Apache met behulp van één enkele netwerkinterface met verschillende IP-adressen op één enkel subnetnetwerk.

Het belangrijkste voordeel van het gebruik van deze IP-aliasing is dat u geen fysieke adapter aan elk IP hoeft te koppelen, maar dat u in plaats daarvan meerdere of vele virtuele interfaces kunt maken ( aliassen) naar één fysieke kaart.

De hier gegeven instructies zijn van toepassing op alle grote Linux-distributies zoals Red Hat, Fedora en CentOS. Het creëren van meerdere interfaces en het handmatig toewijzen van een IP-adres is een hele klus. Hier zullen we zien hoe we er een IP-adres aan kunnen toewijzen, waarbij een reeks IP-bereiken wordt gedefinieerd. Begrijp ook hoe we een virtuele interface gaan creëren en in één keer een ander bereik van IP-adressen aan een interface gaan toewijzen. In dit artikel hebben we LAN IPs gebruikt, dus vervang deze door de IP-adressen die u gaat gebruiken.

Virtuele interface creëren en meerdere IP-adressen toewijzen

Hier heb ik een interface genaamd “ifcfg-eth0“, de standaardinterface voor het Ethernet-apparaat. Als u een tweede Ethernet-apparaat heeft aangesloten, is er voor elk apparaat dat u heeft aangesloten een “ifcfg-eth1”-apparaat, enzovoort. Deze apparaatnetwerkbestanden bevinden zich in de map “/etc/sysconfig/network-scripts/”. Navigeer naar de map en voer “ls -l” uit om alle apparaten weer te geven.

cd /etc/sysconfig/network-scripts/
ls -l
Voorbeelduitvoer
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

Laten we aannemen dat we drie extra virtuele interfaces willen maken om drie IP-adressen te koppelen (172.16.16.126, 172.16.16.127 en 172.16.16.128 ) naar de NIC. We moeten dus drie extra aliasbestanden maken, terwijl “ifcfg-eth0” hetzelfde primaire IP-adres behoudt. Dit is hoe we verder gaan met het instellen van drie aliassen om de volgende IP-adressen te binden.

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

Waarbij “:X” het apparaatnummer (interface) is om de aliassen voor interface eth0 te maken. Aan elke alias moet u opeenvolgend een nummer toekennen. We kopiëren bijvoorbeeld bestaande parameters van interface “ifcfg-eth0” in virtuele interfaces genaamd ifcfg-eth0:0, ifcfg-eth0:1 en ifcfg-eth0:2. Ga naar de netwerkmap en maak de bestanden zoals hieronder weergegeven.

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

Open een bestand “ifcfg-eth0” en bekijk de inhoud.

[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

Hier hebben we slechts twee parameters nodig (DEVICE en IPADDR). Open dus elk bestand met de VI-editor en hernoem de naam DEVICE naar de overeenkomstige alias en wijzig het IPADDR-adres. Open bijvoorbeeld de bestanden “ifcfg-eth0:0“, “ifcfg-eth0:1” en “ifcfg-eth0:2” met VI-editor en wijzig beide parameters. Uiteindelijk zal het er ongeveer zo uitzien als hieronder.

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

Nadat u alle wijzigingen heeft aangebracht, slaat u al uw wijzigingen op en start u de netwerkservice opnieuw op zodat de wijzigingen worden doorgevoerd.

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

Om te controleren of alle aliassen (virtuele interface) actief zijn, kunt u de opdracht “ifconfig” of “ip” gebruiken.

[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 ze allemaal vanaf een andere machine. Als alles correct is ingesteld, krijgt u van elk van hen een ping-antwoord.

ping 172.16.16.126
ping 172.16.16.127
ping 172.16.16.128
Voorbeelduitvoer
[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

Het lijkt erop dat alles soepel werkt. Met deze nieuwe IP's kun je virtuele sites opzetten in Apache-, FTP-accounts en vele andere dingen.

Wijs meerdere IP-adresbereiken toe

Als u een reeks van meerdere IP-adressen wilt maken voor een bepaalde interface genaamd “ifcfg-eth0“, gebruiken we “ ifcfg-eth0-range0” en kopieer de inhoud van ifcfg-eth0 erop zoals hieronder weergegeven.

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

Open nu het bestand “ifcfg-eth0-range0” en voeg het IP-adresbereik “IPADDR_START” en “IPADDR_END” toe, zoals hieronder weergegeven.

[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

Sla het op en start/herstart de netwerkservice

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

Controleer of virtuele interfaces zijn gemaakt met 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

Als u problemen ondervindt bij het instellen, kunt u uw vragen in het opmerkingengedeelte plaatsen.