ในบทความนี้เราจะแสดงวิธีกำหนดค่าอินเทอร์เฟซ VLAN ที่ติดแท็กโดยใช้เครื่องมือ Linux ดั้งเดิมบน CentOS/Fedora/RedHat เราจะศึกษาการกำหนดค่าโดยใช้อินเทอร์เฟซย่อย , vlanX . แยกต่างหาก ไฟล์และเครื่องมือต่างๆ เช่น NetworkManager และ vconfig .
ใน CentOS/Fedora/RedHat มีตัวเลือกการกำหนดค่า VLAN สองตัวเลือก:
- การใช้ อินเทอร์เฟซย่อย (เช่น
eth12.7
) - ใช้ vlanXX แยกต่างหาก (
vlan7
) ไฟล์
VLAN (Virtual Local Area Network) อนุญาตให้แบ่งเครือข่ายของคุณออกเป็นโดเมนกระจายเสียงหลายโดเมนในระดับ OSI ของดาต้าลิงค์ เมื่อใช้ VLAN คุณสามารถกำหนดค่าเครือข่ายบางส่วนได้บนอินเทอร์เฟซทางกายภาพเดียวกันของเซิร์ฟเวอร์ของคุณ เมื่อใช้ 802.1Q VLAN เราเตอร์ สวิตช์ และเซิร์ฟเวอร์ควรกำหนดแท็กพิเศษ (การรับส่งข้อมูลที่แท็ก) ด้วยหมายเลข VLAN (VLAN ID:ตั้งแต่ 0 ถึง 4095) ให้กับแพ็กเก็ตเครือข่าย
จะสร้าง VLAN โดยใช้ Subinterface ได้อย่างไร
ในการกำหนดค่าอินเทอร์เฟซที่ติดแท็ก โมดูล 8021q ของเคอร์เนล Linux ต้องเปิดใช้งานบนเซิร์ฟเวอร์ของคุณ ในการโหลดโมดูล ให้ใช้คำสั่ง:
# modprobe 8021q
หากโหลดโมดูลแล้ว ข้อผิดพลาดต่อไปนี้จะปรากฏขึ้น: modprobe:ข้อผิดพลาด:ไม่สามารถแทรก '8021q':โมดูลอยู่ในเคอร์เนลแล้ว .
ตรวจสอบให้แน่ใจว่าได้โหลดโมดูลแล้ว:
# lsmod | grep 8021q
8021q 33080 0garp 14384 1 8021qmrp 18542 1 8021q
ไม่เป็นไร มีโมดูล 8021q อยู่ในระบบ
คุณต้องเพิ่มโมดูลนี้ในการเริ่มต้นระบบ Linux:
# echo 8021q >> /etc/modules-load.d/8021q.conf
สร้าง VLAN ด้วย ID 7 สำหรับ eth0 อินเตอร์เฟซ. เพิ่มไฟล์กำหนดค่า ifcfg-eth0.7
(7 หลังจุดคือหมายเลข VLAN) ไฟล์นี้มีคำอธิบายของอินเทอร์เฟซย่อย VLAN
# nano /etc/sysconfig/network-scripts/ifcfg-eth0.7
เพิ่มการกำหนดค่าต่อไปนี้:
ONBOOT=yesTYPE=EthernetVLAN=yesDEVICE=eth0.7BOOTPROTO=staticIPADDR=10.61.20.10NETMASK=255.255.255.0
ไฟล์คอนฟิกูเรชันนี้ผูกอินเตอร์เฟสเสมือน eth0.7 เข้ากับฟิสิคัลอินเตอร์เฟส eth0 หลังจากสร้างไฟล์กำหนดค่าแล้ว ให้เริ่มบริการเครือข่ายใหม่:
# systemctl restart network
ตรวจสอบการตั้งค่าเครือข่าย:
# ip a
อย่างที่คุณเห็น อินเทอร์เฟซย่อยที่มี VLAN 7 ได้รับการเพิ่ม
คุณสามารถแสดงอินเทอร์เฟซปัจจุบันและการเชื่อมโยง VLAN ได้ดังนี้:
# cat /proc/net/vlan/config
ในการรับสถิติอินเทอร์เฟซ (โดยใช้ตัวนับแพ็คเก็ต คุณสามารถตรวจสอบให้แน่ใจว่าอินเทอร์เฟซ VLAN ได้รับการติดแท็กปริมาณการใช้งาน):
# cat /proc/net/vlan/eth0.7
ในการ ping จากอินเทอร์เฟซ VLAN เฉพาะ ให้ใช้คำสั่งนี้:
# ping -I eth0.7 192.168.1.22
การกำหนดค่า VLAN โดยใช้ไฟล์ vlanXX แยก
ตอนนี้เรามาลองสร้าง VLAN ด้วย ID 8 โดยใช้ไฟล์กำหนดค่าแยกกัน:
# nano /etc/sysconfig/network-scripts/ifcfg-vlan8
เพิ่มบรรทัดเหล่านี้:
ONBOOT=yesTYPE=EthernetVLAN=yesVLAN_NAME_TYPE=VLAN_PLUS_VID_NO_PADDEVICE=vlan8PHYSDEV=eth0.8VLAN_ID=8BOOTPROTO=staticIPADDR=10.6.120.10NETMASK=255.255.255.0
โปรดทราบว่าไฟล์ปรับแต่งจะแตกต่างจากไฟล์ก่อนหน้าเล็กน้อย ในการตั้งค่านี้ คุณระบุบรรทัด 'PHYSDEV ’ ที่ส่งต่อไฟล์การกำหนดค่าไปยังอินเทอร์เฟซเครือข่ายจริง
หลังจากที่คุณกำหนดค่าเสร็จเรียบร้อยแล้ว ให้เริ่มบริการเครือข่ายของคุณใหม่:
# systemctl restart network
ตรวจสอบ:
ip l ls
2:eth0:mtu 1500 qdisc pfifo_fast state UP mode ค่าเริ่มต้นของกลุ่ม qlen 1000link/ether 52:54:00:1d:4b:67 brd ff:ff:ff:ff:ff:ff6:vlan8@eth0: mtu 1500 qdisc noqueue state UP mode ค่าเริ่มต้นของกลุ่ม qlen 1000link/ether 52:54:00:1d:4b:67 brd ff:ff:ff:ff :ff:ff
VLAN8 อินเทอร์เฟซเครือข่ายก็มีให้เช่นกัน
การใช้ NetworkManager เพื่อกำหนดค่าอินเทอร์เฟซ VLAN
ตั้งแต่ Centos 8 (RHEL 8) NetworkManager ใช้สำหรับจัดการการเชื่อมต่อเครือข่าย เครื่องมือนี้ยังมีให้ใช้งานก่อนหน้านี้ แต่ผู้ดูแลระบบส่วนใหญ่ใช้เครือข่าย พวกเขาคุ้นเคย
มาดูวิธีกำหนดค่า VLAN โดยใช้ NM กัน สร้างอินเทอร์เฟซเสมือน ens3.7
สำหรับ VLAN 7 บนอินเทอร์เฟซทางกายภาพ ens3 และตั้งค่าที่อยู่ IP:
# nmcli con add type vlan con-name ens3.7 ifname VLAN7 id 7 dev ens3 ip4 10.1.10.11/24 gw4 10.1.10.1
ในการตรวจสอบอินเทอร์เฟซเครือข่ายบนเซิร์ฟเวอร์ของคุณ ให้รันคำสั่งนี้:
# nmcli con show
NAME UUID TYPE DEVICEens3 8bd5cfbc-5ffc-4554-8ae1-9e02e4b57ceb ethernet ens3virbr0 e64e63a5-76ae-4661-91ae-009f566c5e66 บริดจ์ virbr0ens3.7 e5e91557-49a8-433989-bd97 VLANรีสตาร์ท NetworkManager หลังจากกำหนดค่า:
# systemctl restart NetworkManager
หลังจากเริ่มบริการ NM ใหม่ อินเทอร์เฟซยังคงอยู่ที่นั่น:
คุณสามารถแสดงการตั้งค่า VLAN ปัจจุบันได้ดังนี้:
# nmcli connection show ens3.7
จะกำหนดค่า VLAN ชั่วคราวโดยใช้ vconfig ได้อย่างไร
สำหรับการทดสอบการตั้งค่าเครือข่าย/VLAN ควรใช้ vconfig เครื่องมือ. Vconfig เป็นเครื่องมือที่มีประโยชน์มากในระหว่างการทดสอบหรือการศึกษา เนื่องจากหากคุณสูญเสียการเข้าถึงเซิร์ฟเวอร์ของคุณเนื่องจากการตั้งค่าเครือข่ายที่ไม่ถูกต้อง คุณสามารถกลับไปใช้การกำหนดค่าเดิมได้ด้วยการรีบูตอย่างง่าย เครื่องมือนี้มีอยู่ในที่เก็บ EPEL มาติดตั้งโดยใช้ yum (หรือ dnf):
# yum install epel-release-y && yum install vconfig
สร้างอินเทอร์เฟซด้วย VLAN9 :
# vconfig add eth0 9
เพิ่ม VLAN ด้วย VID ==9 เป็น IF -:eth0:-จากนั้นกำหนดที่อยู่ IP ให้กับอินเทอร์เฟซเครือข่ายที่สร้างขึ้น:
# ifconfig eth0.9 10.1.0.15 netmask 255.255.255.0 up
สร้างอินเทอร์เฟซ VLAN ชั่วคราวแล้ว
อย่าลืมกำหนดค่า VLAN ที่สอดคล้องกันบนฮาร์ดแวร์เครือข่ายของคุณควบคู่ไปกับการกำหนดค่า VLAN บนเซิร์ฟเวอร์เพื่อให้มีการเชื่อมต่อเครือข่าย