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

วิธีกำหนดค่า Network Bridge ใน Ubuntu


Linux สนับสนุนการใช้งานซอฟต์แวร์บริดจ์เครือข่ายเพื่อสร้างฟังก์ชันของบริดจ์เครือข่าย ซึ่งเป็นอุปกรณ์เครือข่ายที่เชื่อมต่อเครือข่ายการสื่อสารตั้งแต่สองเครือข่ายขึ้นไปหรือส่วนเครือข่าย ทำให้เกิดวิธีการทำงานเป็นเครือข่ายเดียว มันทำหน้าที่เกือบจะเหมือนกับสวิตช์เครือข่าย และในแง่ซอฟต์แวร์ มันถูกใช้เพื่อนำแนวคิดของ “สวิตช์เครือข่ายเสมือน ไปใช้”

กรณีการใช้งานทั่วไปของการเชื่อมโยงเครือข่ายซอฟต์แวร์อยู่ในสภาพแวดล้อมการจำลองเสมือนเพื่อเชื่อมต่อเครื่องเสมือน (VM) เข้ากับเครือข่ายโฮสต์เซิร์ฟเวอร์โดยตรง ด้วยวิธีนี้ VM จะถูกปรับใช้บนเครือข่ายย่อยเดียวกันกับโฮสต์ และสามารถเข้าถึงบริการต่างๆ เช่น DHCP และอื่นๆ อีกมากมาย

ในบทความนี้ คุณจะได้เรียนรู้วิธีต่างๆ ในการตั้งค่าบริดจ์เครือข่ายใน Ubuntu และใช้ภายในสภาพแวดล้อมเสมือนจริงเพื่อสร้างเครือข่ายเสมือนในโหมดบริดจ์ภายใต้ VirtualBox และ KVM เพื่อเชื่อมต่อ Virtual Machines กับเครือข่ายเดียวกันกับโฮสต์

ในหน้านี้:
  1. วิธีการติดตั้งยูทิลิตี้ Network Bridge ใน Ubuntu
  2. วิธีสร้าง Network Bridge โดยใช้ NetPlan
  3. วิธีสร้าง Network Bridge โดยใช้ Nmcli
  4. วิธีสร้าง Network Bridge โดยใช้เครื่องมือ nm-connection-editor
  5. วิธีใช้ Network Bridge ในซอฟต์แวร์ Virtualization

การติดตั้งยูทิลิตี้ Network Bridge ใน Ubuntu

เริ่มต้นด้วยการติดตั้งแพ็คเกจ bridge-utils ซึ่งมียูทิลิตี้สำหรับการกำหนดค่า Ubuntu ethernet bridge โดยใช้ apt package manager ดังที่แสดง

apt-get install bridge-utils

จากนั้น ระบุชื่ออินเทอร์เฟซสำหรับอุปกรณ์อีเธอร์เน็ตของคุณโดยใช้คำสั่ง IP ดังที่แสดง

ip ad
OR
ip add

การสร้าง Network Bridge โดยใช้ NetPlan ใน Ubuntu

Netplan เป็นยูทิลิตีส่วนหน้าที่เรียบง่ายและใช้งานง่ายสำหรับการกำหนดค่าเครือข่ายใน Linux โดยใช้รูปแบบ YAML ขณะนี้สนับสนุน NetworkManager และ systemd-netword เป็นเครื่องมือแบ็กเอนด์

หากต้องการกำหนดค่าเครือข่ายสำหรับอินเทอร์เฟซ เช่น บริดจ์ ให้แก้ไขไฟล์การกำหนดค่า netplan ที่พบในไดเรกทอรี /etc/netplan/

ต่อไปนี้เป็นไฟล์การกำหนดค่าตัวอย่าง โดยที่ renderer คือ systemd-netword ซึ่งเป็นค่าเริ่มต้น (แทนที่ enp1s0 ด้วยชื่ออินเทอร์เฟซอีเทอร์เน็ตของคุณ)

network:
  version: 2
  renderer: networkd
  ethernets:
    enp1s0:
      dhcp4: no
  bridges:
    br0:
      dhcp4: yes
      interfaces:
	     - enp1s0

บันทึกไฟล์การกำหนดค่าและใช้การกำหนดค่าเพื่อเปิดใช้งานเครือข่ายบริดจ์โดยการรันคำสั่งต่อไปนี้

sudo netplan apply

จากนั้นใช้คำสั่ง brctl เพื่อแสดงบริดจ์ทั้งหมดบนระบบ ในกรณีนี้ อินเทอร์เฟซ อีเธอร์เน็ต จะถูกเพิ่มเป็นพอร์ตไปยังบริดจ์โดยอัตโนมัติ

sudo brctl show

หากคุณต้องการปิดหรือปิดใช้งานบริดจ์เครือข่ายที่สร้างขึ้น ให้ลบออกโดยใช้คำสั่งต่อไปนี้

sudo ip link set enp1s0 up
sudo ip link set br0 down
sudo brctl delbr br0
OR
sudo nmcli conn up Wired\ connection\ 1
sudo nmcli conn down br0
sudo nmcli conn del br0
sudo nmcli conn del bridge-br0

การสร้าง Network Bridge โดยใช้ Nmcli ใน Ubuntu

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

หากต้องการสร้างบริดจ์เครือข่ายโดยใช้ nmcli ให้รันคำสั่งต่อไปนี้

sudo nmcli conn add type bridge con-name br0 ifname br0

จากนั้นเพิ่มอินเทอร์เฟซ Ethernet เป็นพอร์ตในบริดจ์ตามที่แสดง (อย่าลืมแทนที่ enp1s0 ด้วยชื่ออุปกรณ์ของคุณ)

sudo nmcli conn add type ethernet slave-type bridge con-name bridge-br0 ifname enp1s0 master br0

ถัดไป ยืนยันว่า บริดจ์ ถูกสร้างขึ้นโดยแสดงการเชื่อมต่อเครือข่ายทั้งหมด

sudo nmcli conn show --active

จากนั้น เปิดใช้งานการเชื่อมต่อ บริดจ์ ดังต่อไปนี้ (คุณสามารถใช้ชื่อการเชื่อมต่อ/อินเทอร์เฟซหรือ UUID)

sudo nmcli conn up br0
OR
sudo nmcli conn up e7385b2d-0e93-4a8e-b9a0-5793e5a1fda3

จากนั้นปิดใช้งานอินเทอร์เฟซหรือการเชื่อมต่อ Ethernet

sudo nmcli conn down Ethernet\ connection\ 1
OR
sudo nmcli conn down 525284a9-60d9-4396-a1c1-a37914d43eff

ตอนนี้ลองดูการเชื่อมต่อที่ใช้งานอยู่อีกครั้ง อินเทอร์เฟซ Ethernet ควรเป็นทาสในการเชื่อมต่อ บริดจ์ ดังที่แสดงในภาพหน้าจอต่อไปนี้

sudo nmcli conn show --active

การสร้าง Network Bridge โดยใช้เครื่องมือ nm-connection-editor

หากต้องการเปิดแอปพลิเคชัน nm-connection-editor ให้เรียกใช้คำสั่งต่อไปนี้จากเทอร์มินัล

nm-connection-editor

จากหน้าต่างตัวแก้ไข การเชื่อมต่อเครือข่าย ให้คลิกที่เครื่องหมาย + เพื่อเพิ่มโปรไฟล์การเชื่อมต่อใหม่

ต่อไป เลือกประเภทการเชื่อมต่อเป็น Bridge จากเมนูแบบเลื่อนลง และคลิก สร้าง

จากนั้น ตั้งชื่อการเชื่อมต่อบริดจ์และชื่ออินเทอร์เฟซ

จากนั้นคลิกปุ่ม เพิ่ม เพื่อเพิ่มพอร์ต Bridge Slave เช่น อินเทอร์เฟซ Ethernet ดังที่แสดงในภาพหน้าจอต่อไปนี้ เลือก อีเทอร์เน็ต เป็นประเภทการเชื่อมต่อ และคลิก สร้าง

จากนั้น ตั้งชื่อการเชื่อมต่อตามความต้องการของคุณ และคลิก บันทึก

ภายใต้การเชื่อมต่อ บริดจ์ การเชื่อมต่อใหม่ควรปรากฏขึ้นในขณะนี้

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

ถัดไป เปิดใช้งานอินเทอร์เฟซบริดจ์และปิดใช้งานอินเทอร์เฟซอีเทอร์เน็ต โดยใช้คำสั่ง nmcli

sudo nmcli conn up br0
sudo nmcli conn down Ethernet\ connection\ 1

วิธีใช้ Network Bridge ในซอฟต์แวร์ Virtualization

หลังจากตั้งค่า บริดจ์เครือข่าย (สวิตช์เครือข่ายเสมือน) คุณสามารถใช้ในสภาพแวดล้อมการจำลองเสมือน เช่น Oracle VirtualBox และ KVM เพื่อเชื่อมต่อ VM ไปยังเครือข่ายโฮสต์

การใช้ Network Bridge ใน Oracle VirtualBox

เปิด VirtualBox จากนั้นจากรายการ VM เลือก VM จากนั้นคลิกที่การตั้งค่า จากหน้าต่างการตั้งค่า ไปที่ตัวเลือก เครือข่าย และเลือก อะแดปเตอร์ (เช่น อะแดปเตอร์ 1)

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

การใช้ Network Bridge ใน KVM

คุณสามารถใช้เครือข่ายบริดจ์ใหม่ภายใต้ KVM ได้โดยการเพิ่มตัวเลือก --network=bridge=br0 ในขณะที่สร้างเครื่องเสมือนใหม่ โดยใช้ virt-install< /แข็งแกร่ง> คำสั่ง

virt-install --virt-type=kvm --name Ubuntu18.04 --ram 1536 --vcpus=4 --os-variant=ubuntu18.04 --cdrom=/path/to/install.iso --network=bridge=br0,model=virtio --graphics vnc --disk path=/var/lib/libvirt/images/ubuntu18.04.qcow2,size=20,bus=virtio,format=qcow2

จากเว็บคอนโซลก็จะถูกเลือกโดยอัตโนมัติ นอกจากนี้ คุณยังสามารถกำหนดค่าบริดจ์เครือข่ายโดยใช้เครื่องมือบรรทัดคำสั่ง virsh และไฟล์การกำหนดค่า XML ของ VM

สำหรับรายละเอียดเพิ่มเติม โปรดอ่านหน้าคู่มือ netplan และ nmcli (โดยการเรียกใช้ man netplan และ man nmcli) เช่นกัน เป็นเครือข่ายเสมือนใน libvirt และเครือข่ายเสมือนใน VirtualBox คุณสามารถโพสต์คำถามใด ๆ ถึงเราได้ผ่านทางส่วนความคิดเห็นด้านล่าง