การสร้างบริดจ์หลายตัวเชื่อมต่อกับพอร์ต eth หนึ่งพอร์ต


0

ฉันต้องการสร้าง 6 VMs ใน KVM บน Ubuntu 16.04 แต่ฉันต้องการให้ VM เหล่านี้สามารถเข้าถึงได้จากภายนอกโดยตรง เพื่ออธิบายเพิ่มเติมฉันมีพีซีเครื่องอื่นที่เชื่อมต่อกับพีซีเครื่องแรกและฉันต้องการ ping VM ทั้งหมดด้วย IP ที่ระบุ

ดังนั้นผมจึงจำเป็นต้องสร้างสะพานเชื่อมพวกเขาตามที่นี่ ปัญหาคือฉันมีเพียงหนึ่งพอร์ตอีเธอร์เน็ตและเท่าที่ฉันรู้ว่าฉันสามารถใช้งานได้กับ VMs ตัวใดตัวหนึ่งเท่านั้น

มีวิธีในการสร้างบริดจ์ 6 รายการสำหรับ VMs หรือไม่?

ขอบคุณ


4
คุณเข้าใจผิดว่ามันทำงานอย่างไร คุณ (หรือมากกว่าปกติคือซอฟต์แวร์) สร้างบริดจ์อินเตอร์เฟสจากนั้นแต่ละ VM จะถูกเพิ่มเข้ากับบริดจ์
davidgo

ฉันต้องการให้ VMs ทั้งหมดมี IP แยกต่างหากที่สามารถเข้าถึงได้แบบฟอร์มภายนอก (เชื่อมต่อกับพีซีเครื่องอื่น) ถ้าฉันใช้เพียงหนึ่งบริดจ์มันจะทำหน้าที่เหมือน NAT ดังนั้นจึงไม่มี b / w ที่แตกต่างจากภายนอก KVM เองสร้างบริดจ์ แต่ VM ทั้งหมดเชื่อมต่อกับมัน
อาเมียร์โมฮัมมัดฮาตามิ

5
ไม่เช่นนั้น NAT และการเชื่อมโยงไม่เกี่ยวข้องกัน คุณสามารถตั้งค่าบริดจ์ที่ไม่ได้ตั้งชื่อและให้ IP ของเครื่องเอง (ฉันทำสิ่งนี้แล้ว)
davidgo

คุณเป็นเจ้าของสวิตช์ที่ใช้งานได้กับ vlan หรือไม่?
Tim_Stewart

คำตอบ:


1

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

ในกรณีของคุณคุณควรจะสามารถบรรลุสิ่งที่คุณต้องการด้วยหนึ่งบริดจ์ที่เชื่อมต่อ VM ทั้งหมดกับบริดจ์นั้น จากตรงนั้นคุณมีสองตัวเลือก:

  1. ใช้ระบบโฮสต์เป็นบริดจ์จริงสำหรับ VM โดยเชื่อมต่อหนึ่งในอีเธอร์เน็ตอินเตอร์เฟสปกติของคุณกับบริดจ์ สิ่งนี้จะไม่มีการเราต์และไม่มี NAT VM แต่ละตัวจะได้รับ IP และข้อมูลเครือข่ายจากเซิร์ฟเวอร์ DHCP ใดก็ตามที่ทำงานบนเครือข่ายหลักของคุณและจะสามารถเข้าถึงได้อย่างอิสระด้วยที่อยู่ IP ใดก็ตามที่ได้รับมอบหมาย นี่คือวิธีการที่ผมจะแนะนำให้ใช้จนกว่าคุณจริงๆต้องมีระบบโฮสต์ที่จะทำหน้าที่เป็นไฟร์วอลล์เครือข่ายหลักของคุณไม่ได้เป็นอีเธอร์เน็ตหรือคุณไม่สามารถตั้งสะพานขึ้นในระหว่างการเริ่มต้นระบบก่อน NetworkManager เริ่มพยายามที่จะได้รับที่อยู่ ข้อดีที่นี่คือความเรียบง่าย

  2. ใช้ระบบโฮสต์เป็นเราเตอร์ สิ่งนี้ไม่จำเป็นต้องเชื่อมต่อบริดจ์กับอินเทอร์เฟซทางกายภาพใด ๆ และการตั้งค่าด้วยตนเองของกฎ iptables หรือ nftables เพื่อให้ได้เส้นทางที่ถูกต้อง วิธีการนี้มีข้อดีสามข้อในข้อแรกคุณสามารถใช้โฮสต์เป็นไฟร์วอลล์ลิงค์เครือข่ายหลักของคุณไม่จำเป็นต้องเป็น Ethernet และสามารถติดตั้งได้อย่างง่ายดายหลังจากที่คุณมีที่อยู่เครือข่ายสำหรับระบบโฮสต์แล้ว คุณสามารถทำ NAT ด้วยวิธีนี้ แต่ไม่บังคับ (แม้ว่าจะตั้งค่าได้ง่ายกว่าโครงร่างการจัดเส้นทางอื่น ๆ ) นอกจากนี้คุณยังสามารถทำการแมปที่อยู่อื่น ๆ รวมถึงการแมป 1: 1 ซึ่งฟังดูเหมือนสิ่งที่คุณต้องการ

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


ขอบคุณฉันได้สร้างสะพาน VM มีการเข้าถึงอินเทอร์เน็ต แต่โฮสต์หลักไม่มี ฉันยังมีการเชื่อมต่อแบบไร้สายนอกเหนือจากพอร์ตอีเธอร์เน็ตซึ่งใช้สำหรับเชื่อมต่อกับบริดจ์ แต่ฉันไม่มีอินเทอร์เน็ต มีวิธีการเชื่อมต่ออินเทอร์เน็ตหรือไม่?
amir mohamad hatami

@amirmohamadhatami คุณสามารถกำหนดค่าที่อยู่ IP (หรือเรียกใช้ไคลเอนต์ DHCP) บนบริดจ์ได้เช่นเดียวกับที่คุณทำบนอินเทอร์เฟซเครือข่ายอื่น ๆ
Austin Hemmelgarn
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.