Score:0

Juniper EX4200 Stack พร้อม PFSense DHCP (Discover/Offer Loop)

ธง cn

ขณะนี้ฉันกำลังดิ้นรนกับ Juniper Switch Stack

โทโพโลยีเป็นแบบนี้ โทโพโลยี

พอร์ตไคลเอ็นต์บนสแต็กได้รับการกำหนดค่าเป็นการเข้าถึงแบบแท็กด้วย dot1x (ผู้ร้องขอหลายรายการ) และสลับไปตามการรับรองความถูกต้องของ Radius วิธีนี้ใช้งานได้โดยไม่มีปัญหา และ VLAN ได้รับการกำหนดอย่างถูกต้อง

ไฟร์วอลล์ PFSense 2 ตัวจัดเตรียมหนึ่งอินสแตนซ์ DHCP สำหรับทุกๆ VLAN ในการกำหนดค่าเฟลโอเวอร์ด้วย CARP IP บนซับเน็ตเดียวกันกับ VLAN ดังนั้นจึงไม่จำเป็นต้องใช้รีเลย์ DHCP

ไคลเอ็นต์ Windows สามารถรับ IP และทำงานได้อย่างถูกต้อง แต่ไคลเอนต์ Linux และการบูต PXE ไม่ได้

จาก tcpdump และ Wireshark เราเห็นลูป DHCP Discover/Offer บนไคลเอนต์ Linux ข้อเสนอไปถึงลูกค้าแต่ลูกค้าไม่ส่งคำขอ DHCP เราลองใช้อนุพันธ์ของ Linux และการใช้งาน PXE หลายครั้ง แต่ก็ไม่มีโชค เรายังเปรียบเทียบการจับภาพ Wireshark จาก Windows และ Linux และไม่มีความแตกต่างอย่างแน่นอน

ข้อเสนอแนะใด ๆ เกี่ยวกับวิธีการติดตามปัญหา?

ขอบคุณล่วงหน้า.

อัปเดต:

เพียงเพื่อเพิ่มข้อมูลเพิ่มเติม

ขั้นตอนการกำหนด IP เป็นดังนี้:

  1. ไคลเอ็นต์เริ่มทำงาน (NIC เชื่อมต่อกับสแต็กสวิตช์)
  2. Switch ตรวจสอบสิทธิ์ไคลเอ็นต์กับ Radius Server
  3. Radius Server ตอบรับด้วย Accept และ VLAN ID 940
  4. สแต็กสวิตช์กำหนด VLAN 940 ให้กับพอร์ตที่ไคลเอนต์กำลังเชื่อมต่อในโหมดผู้ร้องขอหลายคน
  5. ลูกค้าส่ง DHCP Discover ออกมา
  6. เซิร์ฟเวอร์ DHCP (ทั้ง PFSense) ตอบรับข้อเสนอ
  7. ลูกค้าส่งคำขอ DHCP
  8. เซิร์ฟเวอร์ DHCP ส่ง DHCP ACK

เห็นได้ชัดว่า 1-6 กำลังทำงานอยู่ ไคลเอนต์ได้รับมอบหมายให้เป็น VLAN 940 ผ่าน Radius Server ส่ง DHCP ออกมา ค้นหา PFSense ทั้งสองมีอินสแตนซ์ DHCP ที่กำหนดค่าสำหรับ VLAN 940 (ช่วง IP 10.94.0.1-200/24) และส่งข้อเสนอ

นี่คือ tcpdump บนหนึ่งในไฟร์วอลล์ PFsense ในกรณีที่ช่วยได้

18:55:25.538580 IP (tos 0x0, ttl 20, id 3, offset 0, flag [none], proto UDP (17), ความยาว 576)
        0.0.0.0.bootpc > 255.255.255.255.bootps: [udp sum ok] BOOTP/DHCP, คำขอจาก 00:19:99:f7:3d:23 (oui Unknown), ความยาว 548, xid 0x99f73d23, วินาที 18, ค่าสถานะ [ ออกอากาศ] (0x8000)
              Client-Ethernet-Address 00:19:99:f7:3d:23 (oui ไม่ทราบ)
              ส่วนขยายผู้ขาย-rfc1048
                คุกกี้วิเศษ 0x63825363
                ข้อความ DHCP ตัวเลือก 53 ความยาว 1: ค้นพบ
                ตัวเลือกคำขอพารามิเตอร์ 55 ความยาว 36:
                  Subnet-Mask, เขตเวลา, เกตเวย์เริ่มต้น, เซิร์ฟเวอร์เวลา
                  IEN-ชื่อเซิร์ฟเวอร์, ชื่อโดเมน-เซิร์ฟเวอร์, RL, ชื่อโฮสต์
                  BS, ชื่อโดเมน, SS, RP
                  EP, RSZ, TTL, BR
                  YD, YS, NTP, ผู้ขาย - ตัวเลือก
                  IP ที่ร้องขอ, Lease-Time, Server-ID, RN
                  RB, ระดับผู้จำหน่าย, TFTP, BF
                  ตัวเลือก 128, ตัวเลือก 129, ตัวเลือก 130, ตัวเลือก 131
                  ตัวเลือก 132, ตัวเลือก 133, ตัวเลือก 134, ตัวเลือก 135
                MSZ ตัวเลือก 57 ความยาว 2: 1260
                GUID ตัวเลือก 97 ความยาว 17: 0.72.178.216.253.99.205.17.226.190.154.221.134.53.14.178.59
                ARCH ตัวเลือก 93 ความยาว 2: 0
                NDI ตัวเลือก 94 ความยาว 3: 1.2.1
                ตัวเลือกระดับผู้ขาย 60 ความยาว 32: "PXEClient:Arch:00000:UNDI:002001"
                END ตัวเลือก 255, ความยาว 0
                PAD Option 0 ความยาว 0 เกิดขึ้น 200
    
    18:55:26.546900 IP (tos 0x10, ttl 128, id 0, offset 0, flag [none], proto UDP (17), ความยาว 334)
        10.94.0.253.bootps > 255.255.255.255.bootpc: [udp sum ok] BOOTP/DHCP, ตอบกลับ, ความยาว 306, xid 0x99f73d23, วินาที 18, ค่าสถานะ [ออกอากาศ] (0x8000)
              IP ของคุณ 10.94.0.5
              Server-IP 10.91.0.1
              Client-Ethernet-Address 00:19:99:f7:3d:23 (oui ไม่ทราบ)
              ไฟล์ "pxelinux.0"
              ส่วนขยายผู้ขาย-rfc1048
                คุกกี้วิเศษ 0x63825363
                ข้อความ DHCP ตัวเลือก 53 ความยาว 1: ข้อเสนอ
                Server-ID ตัวเลือก 54 ความยาว 4: 10.94.0.253
                Lease-Time ตัวเลือก 51 ความยาว 4: 600
                Subnet-Mask ตัวเลือก 1 ความยาว 4: 255.255.255.0
                ตัวเลือกเกตเวย์เริ่มต้น 3 ความยาว 4: 10.94.0.254
                Domain-Name-Server ตัวเลือก 6 ความยาว 8: 10.0.2.1,10.0.2.2
                ชื่อโดเมน ตัวเลือก 15 ความยาว 9: "domain.intra"
                NTP ตัวเลือก 42 ความยาว 4: 10.94.0.254
                TFTP ตัวเลือก 66 ความยาว 9: "10.91.0.1"
                END ตัวเลือก 255, ความยาว 0
                
    18:55:26.547180 IP (tos 0x10, ttl 128, id 0, offset 0, flag [ไม่มี], proto UDP (17), ความยาว 334)
        10.94.0.252.bootps > 255.255.255.255.bootpc: [udp sum ok] BOOTP/DHCP, ตอบกลับ, ความยาว 306, xid 0x99f73d23, วินาที 18, ค่าสถานะ [ออกอากาศ] (0x8000)
              IP ของคุณ 10.94.0.104
              Server-IP 10.91.0.1
              Client-Ethernet-Address 00:19:99:f7:3d:23 (oui ไม่ทราบ)
              ไฟล์ "pxelinux.0"
              ส่วนขยายผู้ขาย-rfc1048
                คุกกี้วิเศษ 0x63825363
                ข้อความ DHCP ตัวเลือก 53 ความยาว 1: ข้อเสนอ
                Server-ID ตัวเลือก 54 ความยาว 4: 10.94.0.252
                Lease-Time ตัวเลือก 51 ความยาว 4: 600
                Subnet-Mask ตัวเลือก 1 ความยาว 4: 255.255.255.0
                ตัวเลือกเกตเวย์เริ่มต้น 3 ความยาว 4: 10.94.0.254
                Domain-Name-Server ตัวเลือก 6 ความยาว 8: 10.0.2.1,10.0.2.2
                ชื่อโดเมน ตัวเลือก 15 ความยาว 9: "domain.intra"
                NTP ตัวเลือก 42 ความยาว 4: 10.94.0.254
                TFTP ตัวเลือก 66 ความยาว 9: "10.91.0.1"
                END ตัวเลือก 255, ความยาว 0

ลูกค้าเห็นสิ่งเดียวกันแต่เพิกเฉย ดูผิดหรือเปล่า?

มันใช้งานได้ถ้าฉันทำเช่นเดียวกันกับ Linux VM บนสวิตช์ฝั่งเซิร์ฟเวอร์ (ที่เชื่อมต่อ Radius Server) ดังนั้นฉันค่อนข้างแน่ใจว่าปัญหาอยู่ใน Juniper Switch Stack

อัปเดต 2:

ข้อสันนิษฐานของฉันเกี่ยวกับปัญหาใน Switch Stack นั้นถูกต้อง ดูเหมือนว่าโหมดพอร์ต "tagged-access" จะไม่ทำงานอย่างที่ควรจะเป็น การเปลี่ยนไปใช้โหมดพอร์ต "การเข้าถึง" ช่วยแก้ปัญหาได้ แต่มันไม่สมเหตุสมผลสำหรับฉันเนื่องจากโหมด "การเข้าถึง" ไม่ควรจัดการผู้ร้องขอหลายคนใน VLAN ที่แตกต่างกัน แต่เห็นได้ชัดว่าเป็นเช่นนั้น

Score:0
ธง za
Pat

Linux distros จำนวนมากใช้ klibc ไอพีคอนฟิก เมื่อกำหนดค่าอินเทอร์เฟซเครือข่าย (โปรดพิจารณาว่านี่เป็นเครื่องมือที่แตกต่างจากที่ใช้ใน Windows ที่มีชื่อเดียวกัน)

https://kernel.googlesource.com/pub/scm/libs/klibc/klibc/+/klibc-0.130/ipconfig/README

โปรดดูตัวแปร

-c โปรโต    

โดยกำหนดเป็น BOOTP หรือ DHCP ก็ได้

ฉันพบว่าขึ้นอยู่กับเซิร์ฟเวอร์ DHCP ที่ใช้ไคลเอนต์ DHCP โดยสิ้นเชิง ไม่สนใจข้อเสนอ DHCP ที่สอดคล้องกัน แต่เมื่อตั้งค่าอย่างถูกต้อง -ค พารามิเตอร์ที่ลูกค้ายอมรับข้อเสนอ

เมื่อทำการบูทเช่น Ubuntu คุณสามารถระบุพารามิเตอร์นี้ได้โดยเพิ่ม IP=ดีเอชซีพี หรือ IP=บูต ในบรรทัดคำสั่งของเคอร์เนล ในเดเบียนนั้นแตกต่างกันและใช้เคอร์เนล ไอพี ตัวแปรสำหรับวัตถุประสงค์ที่แตกต่างกัน ในกรณีนี้ คุณต้องแก้ไขการเริ่มระบบ initrd และแก้ไขบรรทัด ipconfig ในสคริปต์ที่เกี่ยวข้องด้วยตนเอง (โดยปกติคือ /lib/live/boot/9990-networking.sh)

cn flag
สวัสดี. ขอบคุณสำหรับคำแนะนำ แต่ฉันคิดว่าปัญหาอยู่ที่การกำหนดค่าสวิตช์สแต็ก
za flag
Pat
คุณสามารถเรียกใช้การจับภาพ Wireshark ที่หลากหลายลงในพอร์ตมิเรอร์ของสวิตช์และคุณควรเห็นปริมาณการใช้งานทั้งหมด แต่ถ้ามันใช้งานได้กับ Windows และไม่ใช้กับ Linux ฉันไม่คิดว่าสวิตช์ของคุณเป็นตัวการ

โพสต์คำตอบ

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