Score:0

ปัญหาเกี่ยวกับ VLAN บน Linux สามารถ ping โฮสต์ใน VLAN อื่น

ธง cn

เมื่อฉันกำหนดค่าที่อยู่ IP บนอินเทอร์เฟซ vlan จากเครือข่ายย่อย vlan อื่น ฉันสามารถเข้าถึงเครือข่ายย่อย vlan อื่นได้ แต่ไม่ควรเข้าถึงได้

ตัวอย่างเช่น:

  • บนสวิตช์ พอร์ตถูกกำหนดค่าให้ติดแท็กด้วย vlan id 500 เท่านั้น
  • บนกล่อง Linux อินเทอร์เฟซ eth0.500 พร้อมที่อยู่ ip 192.168.10.30/24 สามารถ ping โฮสต์ในซับเน็ต 192.168.10.0/24 แต่โฮสต์เหล่านั้นอยู่ใน vlan 3000

ฉันไม่สามารถเข้าใจสิ่งที่ฉันทำผิด คุณช่วยฉันแก้ปัญหานี้ได้ไหม

มีข้อผิดพลาดในกล่อง Linux:

เคอร์เนล: ได้รับแพ็กเก็ตบน eth0.3000 โดยมีที่อยู่ของตัวเองเป็นที่อยู่ต้นทาง (addr: f4:03:43:ba:ca:c1 vlan:0)

STP ถูกปิดใช้งานทั้งบนสวิตช์และกล่อง Linux

สิ่งที่ฉันได้ลอง:

  • rp_filter=1 - ไม่มีผล
  • arp_ignore=1 หรือ 2 - ไม่มีผล
  • arp_filter=1 - ไม่มีผล

ไม่สำคัญว่ามันจะเป็นอินเตอร์เฟสปกติหรือบอนด์หรือบริดจ์ ลักษณะการทำงานจะเหมือนกัน

ไม่มีข้อผิดพลาดบนสวิตช์

ไม่มีการกำหนดเส้นทางเริ่มต้นทั้งบนสวิตช์และกล่อง Linux

ใน Wireshark เมื่อจับทราฟฟิกบน eth0 จะมีแท็ก vlan = 500 บนแพ็กเก็ต

ขอขอบคุณ!

แก้ไข 1: ตารางเส้นทางบนกล่อง Linux:

192.168.10.0/24 dev eth0.500 ลิงก์ขอบเขตเคอร์เนลโปรโต src 192.168.10.30

แก้ไข 2: แผนภาพ ไดแอก1

แก้ไข 3: tracepath และ ping

แกะรอย 192.168.10.31
1?: [โฮสต์ในพื้นที่] pmtu 1500
1: ??? 0.714ms !H
1: ??? 0.516ms !H
    เรซูเม่: pmtu 1500

ping -c 2 192.168.10.31
PING 192.168.10.31 (192.168.10.31) 56(84) ไบต์ของข้อมูล
64 ไบต์จาก 192.168.10.31: icmp_seq=1 ttl=64 เวลา=0.230 ms
64 ไบต์จาก 192.168.10.31: icmp_seq=2 ttl=64 เวลา=0.197 ms

--- สถิติ ping 192.168.10.31 ---
ส่ง 2 แพ็กเก็ต ได้รับ 2 แพ็กเก็ต การสูญเสียแพ็กเก็ต 0% เวลา 1059ms

rtt นาที/เฉลี่ย/สูงสุด/mdev = 0.197/0.213/0.230/0.016 มิลลิวินาที

แก้ไข 4: ที่อยู่ IP

1: จริง: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN กลุ่มเริ่มต้น qlen 1,000
    ลิงค์ / ย้อนกลับ 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 ขอบเขตโฮสต์ lo
       valid_lft ตลอดไป reserved_lft ตลอดไป
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP กลุ่มเริ่มต้น qlen 1000
    ลิงค์/อีเธอร์ f4:03:43:ba:ca:c1 brd ff:ff:ff:ff:ff:ff
3: eth0.500@eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP กลุ่มเริ่มต้น qlen 1000
    ลิงค์/อีเธอร์ f4:03:43:ba:ca:c1 brd ff:ff:ff:ff:ff:ff
    inet 192.168.10.30/24 ขอบเขตทั่วโลก eth0.500@eth0
       valid_lft ตลอดไป reserved_lft ตลอดไป
4: eth0.3000@eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP กลุ่มเริ่มต้น qlen 1000
    ลิงค์/อีเธอร์ f4:03:43:ba:ca:c1 brd ff:ff:ff:ff:ff:ff
in flag
แพ็คเกจถูกส่งไปที่อื่นหรือไม่?
eKKiM avatar
lr flag
คุณสามารถเพิ่มตารางเส้นทางได้หรือไม่?
cn flag
ไม่ได้กำหนดเส้นทางเริ่มต้นในกล่อง Linux และไม่มีเส้นทางเพิ่มเติมเช่นกัน สวิตช์คือ Mellanox SN2010M บนสวิตช์นี้เปิดใช้งานการกำหนดเส้นทาง แต่ใช้งานอินเทอร์เฟซการจัดการเท่านั้น แม้ว่าจะไม่มีที่อยู่ IP บนอินเทอร์เฟซ VLAN สามารถเป็น Cisco ASA ที่เปิดใช้งานอินทราอินเตอร์เฟสใบอนุญาตความปลอดภัยการจราจรเดียวกันได้หรือไม่
cn flag
@eKKiM เพิ่มที่ส่วนท้ายของโพสต์
eKKiM avatar
lr flag
โฮสต์อื่นใน 192.168.10.0/24 ใน vlan 3000 ปรากฏในตาราง ARP ของคุณหรือไม่ บางทีไดอะแกรมขนาดเล็กที่มีโฮสต์ สวิตช์ และ Cisco ASA อาจมีประโยชน์เช่นกัน!
vidarlo avatar
ar flag
`eth0.500 พร้อมที่อยู่ IP 192.168.10.30/24 สามารถ ping โฮสต์ในซับเน็ต 192.168.10.0/24` - 10.0/24 ***เป็น*** ซับเน็ต ***same*** เหมือนกับ 10.0/24 'ร่องรอย' แสดงอะไร
cn flag
แผนภาพ @eKKiM ในตอนท้ายของโพสต์ในตาราง arp ฉันสามารถดูโฮสต์อื่นได้หากฉัน ping หรือ ssh เข้าไป
cn flag
@vidarlo ปัญหาคือฉันสามารถเข้าถึงโฮสต์อื่นใน vlan ที่แตกต่างกันด้วยซับเน็ตเดียวกัน ดังนั้นฉันจึงสามารถกำหนดค่าที่อยู่ IP จากซับเน็ตใน vlan 3000 บนอินเทอร์เฟซด้วย vlan 500 และเข้าถึงซับเน็ตใน vlan 3000 ได้ การติดตามเส้นทางในตอนท้าย
eKKiM avatar
lr flag
คุณมีการกำหนดค่าอะไรบน eth0.3000 หรือไม่ เพิ่มผลลัพธ์ของ ip addr ในที่สุด? ฉันยังรู้สึกว่าอาจมีเส้นทางอื่นในตารางเส้นทางสำหรับ NIC อื่นๆ อีกหรือไม่
cn flag
@eKKiM ip addrs ในการแก้ไขครั้งล่าสุด ตารางเส้นทางในการแก้ไข 1 ไม่มีเส้นทางอื่น
eKKiM avatar
lr flag
คุณสามารถ ping โฮสต์โดยใช้คำสั่งต่อไปนี้ได้หรือไม่: ping -c 2 192.168.10.31 -I eth0.500 นอกจากนี้ หากคุณลบ vlan 3000 ออกจากโฮสต์ คุณจะยังเข้าถึงเครื่องอื่นได้หรือไม่ ให้ย้ายไปแชทเพื่อหลีกเลี่ยงการสแปมความคิดเห็น: https://chat.stackexchange.com/rooms/131659/issues-with-vlans-on-linux-can-ping-hosts-in-other-vlan
cn flag
@eKKiM ฉันสามารถเข้าถึงโฮสต์อื่นที่มีหรือไม่มีอินเทอร์เฟซ eth0.3000 บนโฮสต์ด้วยคำสั่งของคุณ ไม่สามารถตอบคุณในแชทได้เนื่องจากชื่อเสียงต่ำ ขออภัย
cn flag
@eKKiM ที่อยู่ MAC ในตาราง ARP เป็นเครื่องระยะไกล MAC หรือเราเตอร์/สวิตช์ MAC หรือไม่ ใช่ ที่อยู่ MAC ของโฮสต์มีอยู่ในตาราง arp บนเครื่องระยะไกล
cn flag
@eKKiM คุณเชื่อม VLAN บนสวิตช์หรือไม่ คุณหมายถึงอะไร การทำแผนที่ VLAN หรือ Q-in-Q? ไม่ ฉันไม่ได้ใช้สิ่งนี้เลย

โพสต์คำตอบ

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