ฉันจะกำหนดค่าตารางเส้นทางเพื่อเพิ่มเกตเวย์ที่ถูกต้องได้อย่างไร


3

ฉันได้รับข้อผิดพลาดนี้เมื่อพยายาม ping 8.8.8.8 จาก Virtual Machine ของฉัน:

PING 8.8.8.8 (8.8.8.8) 56(84) bytes of data.
From 172.30.8.135: icmp_seq=1 Redirect Host(New nexthop: 172.30.8.254)
From 172.30.8.135: icmp_seq=2 Redirect Host(New nexthop: 172.30.8.254)

เมื่อฉันลอง wget http://www.google.com ฉันล้มเหลว: หมดเวลาการเชื่อมต่อ

นี่คือผลลัพธ์ของเส้นทาง -n:

Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
172.30.8.0      0.0.0.0         255.255.255.0   U     0      0        0 eth0
0.0.0.0      172.30.8.135       0.0.0.0   UG     0      100       0 eth0

นี่คือลักษณะเครือข่ายของฉัน: ฉันได้สร้าง br0 เป็นสะพานเชื่อมข้าม eth0 เพื่อเรียกใช้ VM นี้ โฮสต์มี IP นี้ 172.30.8.135

โฮสต์มีการเข้าถึงอินเทอร์เน็ตผ่าน eth0 และนี่คือผลลัพธ์ของเส้นทางภายในโฮสต์:

Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
172.30.8.0      0.0.0.0         255.255.255.0   U     0      0        0 br0
0.0.0.0         172.30.8.254    0.0.0.0         UG    100    0        0 br0

ขอบคุณล่วงหน้าสำหรับปมใด ๆ ในนี้!

คำตอบ:


2

eth0 ต้องอยู่ในโหมด promisc เพื่อส่งทราฟฟิกไปที่บริดจ์

การตั้งค่าของฉันคือกายภาพ eth0 ใน promisc โดยไม่มีที่อยู่ ip, br0 กับ dhcp ip และใช้บริดจ์เป็น "ส่วนต่อประสาน" ของฉันสำหรับเครื่องฮาร์ดแวร์ที่มีเส้นทางไปยังเกตเวย์จาก dhcp จากนั้นแตะเพิ่มอินเตอร์เฟสกับบริดจ์ ใช้เป็นอินเตอร์เฟส "bridged" ในผลิตภัณฑ์ virtualization นั่นช่วยได้ไหม

บทช่วยสอนเกี่ยวกับการตั้งค่าการจำลองเสมือนด้วยอินเทอร์เฟซสำหรับแตะและการเข้าถึง: http://www.blindhog.net/linux-bridging-for-gns3-lan-communications/


1
ไม่ได้อยู่ใน VM บนฟิสิคัล eth0 ของคุณ ... คุณสามารถให้ br0 ของคุณเป็น IP และอาจใช้มันเพื่อเบราส์จากเครื่องฟิสิคัลถ้าจำเป็น
RobotHumans

1
แก้ไขคำตอบให้ชัดเจนยิ่งขึ้นฉันคิดว่า
RobotHumans

1
คุณไม่จำเป็นต้องตั้ง promisc บน br0 ... ifconfig br0 dhcp & amp; & amp; ifconfig br0 down & amp; & amp; ifconfig br0 up ควรทำ
RobotHumans

1
ผลลัพธ์ของการแสดง brctl คืออะไร
RobotHumans

1
เพื่อเพิ่มส่วนต่อประสานการแตะ: sudo tunctl -t tap0
RobotHumans

1

ในกรณีของฉันช่วย iptables บนเราเตอร์:

iptables -A POSTROUTING --table nat ! -o tap0 -j MASQUERADE
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.