ค้นหาเว็บไซต์

สร้างที่อยู่ IP หลายรายการให้เป็นอินเทอร์เฟซเครือข่ายเดียว


แนวคิดของการสร้างหรือกำหนดค่าที่อยู่ IP หลายรายการบนอินเทอร์เฟซเครือข่ายเดียวเรียกว่า นามแฝง IP นามแฝง IP มีประโยชน์มากสำหรับการตั้งค่าไซต์เสมือนหลายแห่งบน Apache โดยใช้อินเทอร์เฟซเครือข่ายเดียวที่มี ที่อยู่ IP ที่แตกต่างกันบนเครือข่ายย่อยเดียว

ข้อได้เปรียบหลักของการใช้ นามแฝง IP นี้คือ คุณไม่จำเป็นต้องมีอะแดปเตอร์ทางกายภาพต่อกับ IP แต่ละรายการ แต่คุณสามารถสร้างอินเทอร์เฟซเสมือนหลายรายการหรือหลายอินเทอร์เฟซแทนได้ ( นามแฝง) ไปยังการ์ดจริงใบเดียว

คำแนะนำที่ให้ไว้นี้ใช้ได้กับ Linux รุ่นหลักๆ ทั้งหมด เช่น Red Hat, Fedora และ CentOS การสร้างอินเทอร์เฟซหลายรายการและกำหนดที่อยู่ IP ด้วยตนเองถือเป็นงานที่น่ากังวล ที่นี่เราจะมาดูกันว่าเราสามารถกำหนดที่อยู่ IP ให้กับมันเพื่อกำหนดชุดของช่วง IP ได้อย่างไร ทำความเข้าใจว่าเราจะสร้างอินเทอร์เฟซเสมือนและกำหนดช่วงที่อยู่ IP ที่แตกต่างกันให้กับอินเทอร์เฟซได้อย่างไรในครั้งเดียว ในบทความนี้ เราใช้ LAN IP's ดังนั้นให้แทนที่อันที่คุณจะใช้

การสร้างอินเทอร์เฟซเสมือนและกำหนดที่อยู่ IP หลายรายการ

ที่นี่ฉันมีอินเทอร์เฟซชื่อ “ifcfg-eth0“ ซึ่งเป็นอินเทอร์เฟซเริ่มต้นสำหรับอุปกรณ์ 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” และดูเนื้อหา

[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

ที่นี่เราต้องการเพียงสองพารามิเตอร์ (DEVICE และ IPADDR) ดังนั้น ให้เปิดแต่ละไฟล์ด้วยโปรแกรมแก้ไข VI และเปลี่ยนชื่อ อุปกรณ์ เป็นนามแฝงที่เกี่ยวข้อง และเปลี่ยนที่อยู่ 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

เมื่อคุณได้ทำการเปลี่ยนแปลงทั้งหมดแล้ว ให้บันทึกการเปลี่ยนแปลงทั้งหมดของคุณ และรีสตาร์ท/เริ่มบริการเครือข่ายเพื่อให้การเปลี่ยนแปลงมีผล

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

หากต้องการตรวจสอบว่านามแฝงทั้งหมด (อินเทอร์เฟซเสมือน) ทำงานอยู่ คุณสามารถใช้คำสั่ง "ifconfig" หรือ "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 จากแต่ละรายการ

ping 172.16.16.126
ping 172.16.16.127
ping 172.16.16.128
ผลลัพธ์ตัวอย่าง
[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

ดูเหมือนทุกอย่างทำงานได้อย่างราบรื่น ด้วย IP ใหม่เหล่านี้ คุณสามารถตั้งค่าไซต์เสมือนในบัญชี Apache, FTP และอื่นๆ อีกมากมาย

กำหนดช่วงที่อยู่ IP หลายช่วง

หากคุณต้องการสร้าง ช่วง ของ ที่อยู่ IP หลายรายการ ไปยังอินเทอร์เฟซเฉพาะที่เรียกว่า “ifcfg-eth0“ เราจะใช้ “ ifcfg-eth0-range0” และคัดลอกไฟล์ ifcfg-eth0 ดังที่แสดงด้านล่าง

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

ตอนนี้ให้เปิดไฟล์ “ifcfg-eth0-range0” และเพิ่มช่วงที่อยู่ IP “IPADDR_START” และ “IPADDR_END” ดังที่แสดงด้านล่าง

[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

บันทึกและรีสตาร์ท/เริ่มบริการเครือข่าย

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

ตรวจสอบว่าอินเทอร์เฟซเสมือนถูกสร้างขึ้นด้วย ที่อยู่ 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: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

หากคุณประสบปัญหาในการตั้งค่า โปรดโพสต์คำถามของคุณในส่วนความคิดเห็น