Δημιουργήστε πολλαπλές διευθύνσεις IP σε μία ενιαία διεπαφή δικτύου


Η έννοια της δημιουργίας ή της διαμόρφωσης πολλαπλών διευθύνσεων IP σε μια ενιαία διεπαφή δικτύου ονομάζεται Ψευδώνυμο IP. Το ψευδώνυμο IP είναι πολύ χρήσιμο για τη ρύθμιση πολλών εικονικών τοποθεσιών σε Apache χρησιμοποιώντας μία ενιαία διεπαφή δικτύου με διαφορετικές διευθύνσεις IP σε ένα μεμονωμένο δίκτυο υποδικτύου.

Το κύριο πλεονέκτημα της χρήσης αυτού του ψευδώνυμου IP είναι ότι δεν χρειάζεται να έχετε έναν φυσικό προσαρμογέα συνδεδεμένο σε κάθε IP, αλλά μπορείτε να δημιουργήσετε πολλές ή πολλές εικονικές διεπαφές ( ψευδώνυμο) σε μία μόνο φυσική κάρτα.

Οι οδηγίες που δίνονται εδώ ισχύουν για όλες τις μεγάλες διανομές Linux όπως Red Hat, Fedora και CentOS. Η δημιουργία πολλαπλών διεπαφών και η μη αυτόματη εκχώρηση διεύθυνσης IP σε αυτήν είναι μια τρομακτική εργασία. Εδώ θα δούμε πώς μπορούμε να του εκχωρήσουμε διεύθυνση IP ορίζοντας ένα σύνολο εύρους IP. Επίσης, κατανοήστε πώς θα δημιουργήσουμε μια εικονική διεπαφή και θα εκχωρήσουμε διαφορετικό εύρος Διεύθυνσης IP σε μια διεπαφή με μία κίνηση. Σε αυτό το άρθρο χρησιμοποιήσαμε LAN IPs, επομένως αντικαταστήστε αυτές με αυτές που θα χρησιμοποιείτε.

Δημιουργία εικονικής διεπαφής και εκχώρηση πολλαπλών διευθύνσεων IP

Εδώ έχω μια διεπαφή που ονομάζεται ifcfg-eth0, η προεπιλεγμένη διεπαφή για τη συσκευή Ethernet. Εάν έχετε συνδέσει δεύτερη συσκευή Ethernet, τότε θα υπάρχει μια συσκευή ifcfg-eth1 και ούτω καθεξής για κάθε συσκευή που έχετε συνδέσει. Αυτά τα αρχεία δικτύου συσκευών βρίσκονται στον κατάλογο /etc/sysconfig/network-scripts/. Μεταβείτε στον κατάλογο και κάντε ls -l για να εμφανίσετε όλες τις συσκευές.

# cd /etc/sysconfig/network-scripts/
# ls -l
Δείγμα εξόδου
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

Ας υποθέσουμε ότι θέλουμε να δημιουργήσουμε τρεις επιπλέον εικονικές διεπαφές για τη σύνδεση τριών διευθύνσεων IP (172.16.16.126, 172.16.16.127 και 172.16.16.128 ) στο NIC. Επομένως, πρέπει να δημιουργήσουμε τρία επιπλέον αρχεία ψευδωνύμων, ενώ το ifcfg-eth0 διατηρεί την ίδια κύρια διεύθυνση IP. Αυτός είναι ο τρόπος με τον οποίο προχωράμε στη ρύθμιση τριών ψευδωνύμων για τη σύνδεση των παρακάτω διευθύνσεων IP.

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

Όπου :X είναι ο αριθμός της συσκευής (διεπαφή) για τη δημιουργία των ψευδωνύμων για τη διεπαφή eth0. Για κάθε ψευδώνυμο πρέπει να αντιστοιχίσετε έναν αριθμό διαδοχικά. Για παράδειγμα, αντιγράφουμε τις υπάρχουσες παραμέτρους της διεπαφής ifcfg-eth0 σε εικονικές διεπαφές που ονομάζονται ifcfg-eth0:0, ifcfg-eth0:1 και ifcfg-eth0:2. Μεταβείτε στον κατάλογο δικτύου και δημιουργήστε τα αρχεία όπως φαίνεται παρακάτω.

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

Ανοίξτε ένα αρχείο ifcfg-eth0 και προβάλετε τα περιεχόμενα.

[ 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

Εδώ χρειαζόμαστε μόνο δύο παραμέτρους (DEVICE και IPADDR). Επομένως, ανοίξτε κάθε αρχείο με το πρόγραμμα επεξεργασίας VI και μετονομάστε το όνομα DEVICE στο αντίστοιχο ψευδώνυμο και αλλάξτε τη διεύθυνση IPADDR. Για παράδειγμα, ανοίξτε τα αρχεία ifcfg-eth0:0, ifcfg-eth0:1 και ifcfg-eth0:2 χρησιμοποιώντας VI πρόγραμμα επεξεργασίας και αλλάξτε και τις δύο παραμέτρους. Τελικά θα μοιάζει με το παρακάτω.

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

Μόλις κάνετε όλες τις αλλαγές, αποθηκεύστε όλες τις αλλαγές σας και επανεκκινήστε/ξεκινήστε την υπηρεσία δικτύου για να αντικατοπτρίζονται οι αλλαγές.

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

Για να επαληθεύσετε ότι όλα τα ψευδώνυμα (εικονική διεπαφή) είναι σε λειτουργία και εκτελούνται, μπορείτε να χρησιμοποιήσετε την εντολή ip.

[ 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 σε κάθε ένα από διαφορετικό μηχάνημα. Εάν όλα έχουν ρυθμιστεί σωστά, θα λάβετε μια απάντηση ping από καθένα από αυτά.

ping 172.16.16.126
ping 172.16.16.127
ping 172.16.16.128
Δείγμα εξόδου
[ ~]# 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

[ ~]# 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

[ ~]# 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

Φαίνεται ότι όλα λειτουργούν ομαλά. Με αυτές τις νέες διευθύνσεις IP μπορείτε να ρυθμίσετε εικονικούς ιστότοπους σε λογαριασμούς Apache, FTP και πολλά άλλα πράγματα.

Εκχώρηση πολλαπλών εύρους διευθύνσεων IP

Εάν θέλετε να δημιουργήσετε ένα εύρος από Πολλαπλές διευθύνσεις IP σε μια συγκεκριμένη διεπαφή που ονομάζεται ifcfg-eth0, χρησιμοποιούμε ifcfg-eth0-range0” και αντιγράψτε τα στοιχεία του ifcfg-eth0 σε αυτό όπως φαίνεται παρακάτω.

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

Τώρα ανοίξτε το αρχείο ifcfg-eth0-range0 και προσθέστε το εύρος διευθύνσεων IP IPADDR_START και IPADDR_END, όπως φαίνεται παρακάτω.

[ 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

Αποθηκεύστε το και επανεκκινήστε/ξεκινήστε την υπηρεσία δικτύου

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

Βεβαιωθείτε ότι οι εικονικές διεπαφές δημιουργούνται με Διεύθυνση IP.

[ 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

Εάν αντιμετωπίζετε οποιοδήποτε πρόβλημα με τη ρύθμιση, δημοσιεύστε τα ερωτήματά σας στην ενότητα σχολίων.