Δημιουργήστε πολλαπλές διευθύνσεις IP σε μία ενιαία διεπαφή δικτύου
Η έννοια της δημιουργίας ή της διαμόρφωσης πολλαπλών διευθύνσεων IP σε μια ενιαία διεπαφή δικτύου ονομάζεται Ψευδώνυμο IP. Το ψευδώνυμο IP είναι πολύ χρήσιμο για τη ρύθμιση πολλών εικονικών τοποθεσιών σε Apache χρησιμοποιώντας μία ενιαία διεπαφή δικτύου με διαφορετικές διευθύνσεις IP σε ένα μεμονωμένο δίκτυο υποδικτύου.
Το κύριο πλεονέκτημα της χρήσης αυτού του ψευδώνυμου IP είναι ότι δεν χρειάζεται να έχετε έναν φυσικό προσαρμογέα συνδεδεμένο σε κάθε IP, αλλά μπορείτε να δημιουργήσετε πολλές ή πολλές εικονικές διεπαφές ( ψευδώνυμο) σε μία μόνο φυσική κάρτα.
Οι οδηγίες που δίνονται εδώ ισχύουν για όλες τις μεγάλες διανομές Linux όπως Red Hat, Fedora και CentOS. Η δημιουργία πολλαπλών διεπαφών και η μη αυτόματη εκχώρηση διεύθυνσης IP σε αυτήν είναι μια τρομακτική εργασία. Εδώ θα δούμε πώς μπορούμε να του εκχωρήσουμε διεύθυνση IP ορίζοντας ένα σύνολο εύρους IP. Επίσης, κατανοήστε πώς θα δημιουργήσουμε μια εικονική διεπαφή και θα εκχωρήσουμε διαφορετικό εύρος Διεύθυνσης IP σε μια διεπαφή με μία κίνηση. Σε αυτό το άρθρο χρησιμοποιήσαμε LAN IP‘s, επομένως αντικαταστήστε αυτές με αυτές που θα χρησιμοποιείτε.
Δημιουργία εικονικής διεπαφής και εκχώρηση πολλαπλών διευθύνσεων 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
Εάν αντιμετωπίζετε οποιοδήποτε πρόβλημα με τη ρύθμιση, δημοσιεύστε τα ερωτήματά σας στην ενότητα σχολίων.