ต่อสาย PLC แล้วและไฟ LED แสดงลิงก์ของสวิตช์ติด แต่ HMI ยังเข้าถึง PLC ไม่ได้ ลิงก์ทางกายภาพที่ทำงานได้ยืนยันว่ามีการส่งสัญญาณ แต่อุปกรณ์ปลายทาง IPv4 ยังต้องทราบที่อยู่อีเทอร์เน็ตของฮอปถัดไปด้วย ARP จับคู่ที่อยู่ IPv4 ภายในเครือข่ายท้องถิ่นกับที่อยู่ MAC การติดตามลำดับการประมวลผลคำขอที่เกิดขึ้นจริงช่วยอธิบายการค้นหาที่อยู่ การอัปเดตแคช และกลไกเบื้องหลังปัญหา IP ซ้ำ

เลือกฮอปถัดไปก่อนส่งเฟรมข้อมูลการใช้งาน
ที่อยู่ IP ใช้ระบุที่อยู่ในชั้นเครือข่าย ส่วนที่อยู่ MAC ใช้ระบุปลายทางในชั้นลิงก์อีเทอร์เน็ต โดยปกติอินเทอร์เฟซอีเทอร์เน็ตใช้ที่อยู่ MAC ขนาด 48 บิต และสวิตช์ใช้ที่อยู่นั้นเลือกพอร์ตขาออก การกำหนดที่อยู่ IP ให้ PLC ไม่ได้หมายความว่า HMI ทราบ MAC ของ PLC แล้ว ไฟ LED แสดงลิงก์ที่ติดอยู่ไม่ได้พิสูจน์ว่าการกำหนดที่อยู่หรือบริการแอปพลิเคชันถูกต้อง
สมมติว่า HMI มีที่อยู่ 192.168.10.20/24 และ PLC มีที่อยู่ 192.168.10.10/24 อยู่ใน VLAN เดียวกัน พรีฟิกซ์ /24 หมายความว่า 24 บิตแรกใช้ระบุเครือข่าย ซึ่งเทียบเท่ากับมาสก์ 255.255.255.0 HMI ตรวจสอบตารางเส้นทาง ระบุว่า PLC เป็นปลายทางที่เชื่อมต่อโดยตรง และตรวจสอบแคช ARP ของตนเอง ที่อยู่และป้าย MAC แบบย่อทั้งหมดในบทความนี้เป็นตัวอย่างเพื่อการเรียนรู้ ไม่ใช่ผลการวัดภาคสนามของ FCTEL
สำหรับปลายทางอย่าง 192.168.20.10 โดยปกติ HMI จะใช้เกตเวย์ เช่น 192.168.10.1 โดยค้นหา MAC ของเกตเวย์ภายในเครือข่ายท้องถิ่น ไม่ใช่ MAC ของ PLC ระยะไกล MAC ปลายทางของเฟรมเป็นของเกตเวย์ ขณะที่ IP ปลายทางของแพ็กเก็ตยังคงเป็นของ PLC ระยะไกล เราเตอร์จะห่อหุ้มแพ็กเก็ตด้วยเฟรมอีเทอร์เน็ตใหม่บนลิงก์ถัดไป ดังนั้นที่อยู่ MAC จึงอาจเปลี่ยนในแต่ละฮอป ขณะที่การกำหนดเส้นทางตามปกติยังคงรักษา IP ของปลายทางสุดท้ายไว้
บรอดคาสต์คำถามและยูนิคาสต์คำตอบ
เมื่อไม่มีรายการแคชที่ใช้งานได้ HMI จะส่งคำขอ ARP ปลายทางอีเทอร์เน็ตคือ MAC บรอดคาสต์ FF:FF:FF:FF:FF:FF และ EtherType 0x0806 ระบุว่าเพย์โหลดเป็น ARP สำหรับอีเทอร์เน็ตและ IPv4 โดยทั่วไปส่วนหัว ARP จะระบุชนิดฮาร์ดแวร์ 1 ชนิดโพรโทคอล 0x0800 ความยาวที่อยู่ฮาร์ดแวร์ 6 ความยาวที่อยู่โพรโทคอล 4 รหัสการดำเนินการ และที่อยู่ของผู้ส่งกับเป้าหมาย รหัสการดำเนินการสำหรับคำขอคือ 1 และสำหรับคำตอบคือ 2
คำขอมี IP และ MAC ของ HMI และสอบถามว่าอุปกรณ์ใดเป็นเจ้าของ 192.168.10.10 ขณะนั้นยังไม่ทราบที่อยู่ฮาร์ดแวร์ของเป้าหมาย จึงมักระบุเป็นศูนย์ในคำขอ สวิตช์จะทำสำเนาบรอดคาสต์ไปยังพอร์ตส่งต่ออื่นที่มีสิทธิ์ใน VLAN นั้น ไม่ใช่ทุก VLAN โดยปกติกล้องที่ไม่เกี่ยวข้องจะไม่ตอบ ส่วน PLC จะพบว่า IP เป้าหมายเป็นของตนเองและเตรียมคำตอบ
คำตอบตามปกติจะส่งแบบยูนิคาสต์ไปยัง HMI และระบุ IP กับ MAC ของ PLC ผู้ส่ง จากนั้น HMI สามารถจับคู่ 192.168.10.10 กับ MAC นั้นและห่อหุ้มเฟรมข้อมูลการใช้งานที่รอส่งอยู่ การค้นหาที่อยู่ต้องใช้บรอดคาสต์ แต่แพ็กเก็ตข้อมูลการใช้งานแต่ละแพ็กเก็ตหลังจากนั้นไม่จำเป็นต้องใช้ การส่งซ้ำ ระยะหมดเวลา และการหมดอายุของแคชขึ้นอยู่กับการออกแบบการทำงานของอุปกรณ์ปลายทาง ไม่สามารถใช้ค่าตัวจับเวลาคงที่เพียงค่าเดียวอธิบาย PLC คอมพิวเตอร์ และเกตเวย์ทุกชนิดได้

แยกแคช ARP ของอุปกรณ์ปลายทางออกจากตาราง MAC ของสวิตช์
โดยปกติแคช ARP อยู่ในอุปกรณ์ปลายทาง IPv4 หรืออินเทอร์เฟซชั้นที่ 3 และใช้ตอบว่าควรใช้ MAC ใดสำหรับฮอปถัดไป IPv4 ฐานข้อมูลการส่งต่อของสวิตช์ หรือ FDB ใช้ตอบว่าพอร์ตใดเชื่อมไปถึง MAC ปลายทางใน VLAN ที่ระบุ ตารางทั้งสองอาจมีส่วนร่วมในการรับส่งข้อมูลครั้งเดียวกัน แต่มีคีย์และค่าแตกต่างกันและใช้แทนกันไม่ได้
เมื่อเฟรมจาก HMI เข้าสู่พอร์ต 1 สวิตช์จะเรียนรู้ MAC ต้นทางว่าอยู่บนพอร์ตนั้น หาก MAC ปลายทางชี้ไปยังพอร์ต 2 สวิตช์จะส่งต่อเฟรมไปยัง PLC ที่พอร์ตนั้น การเรียนรู้ MAC ต้นทางใช้ที่อยู่ต้นทางในเฟรมอีเทอร์เน็ต ไม่ใช่ IP ของผู้ส่งภายในเพย์โหลด ARP หากยังไม่ได้เรียนรู้ MAC ปลายทาง ยูนิคาสต์ที่ไม่ทราบปลายทางอาจถูกกระจายไปยังพอร์ตอื่นที่มีสิทธิ์ใน VLAN ซึ่งมีสาเหตุต่างจากการบรอดคาสต์คำขอ ARP
อุปกรณ์แปลงสื่อไฟเบอร์หรือลิงก์อัปลิงก์แบบออปติคัลสามารถขยายเส้นทางชั้นที่ 2 นี้ได้ แต่ไม่ได้ค้นหาที่อยู่ IP ของอุปกรณ์ปลายทางโดยอัตโนมัติ การส่งต่อ ARP ไม่ได้หมายความว่าสวิตช์ที่ทำงานเฉพาะชั้นที่ 2 มีแคช ARP สำหรับ PLC ทุกตัว ส่วน IP สำหรับจัดการสวิตช์ อินเทอร์เฟซที่กำหนดเส้นทาง หรือฟังก์ชันความปลอดภัยเฉพาะอาจใช้ ARP แยกต่างหาก ต้องระบุให้ชัดเจนเสมอว่ากำลังตรวจสอบอุปกรณ์ ตาราง และ VLAN ใด

เหตุใดที่อยู่ IP ซ้ำจึงอาจทำให้สื่อสารได้เป็นบางครั้ง
หาก PLC-A และ PLC-B ใช้ 192.168.10.10 เดียวกันแต่มีที่อยู่ MAC ต่างกัน ทั้งสองอาจตอบคำขอเดียวกัน การที่ HMI จะยอมรับการจับคู่ใดและจะเปลี่ยนในภายหลังหรือไม่ ขึ้นอยู่กับลำดับการมาถึง กฎของแคช และการออกแบบการทำงาน การจับคู่กับ A จะส่งเฟรมข้อมูลการใช้งานไปยัง A ส่วนการจับคู่กับ B ในภายหลังอาจเปลี่ยนเส้นทางเฟรมเหล่านั้นไปยัง B อาการอาจรวมถึงการเข้าถึงได้เป็นบางครั้ง การสื่อสารกับอุปกรณ์ผิดตัว หรือการสร้างการเชื่อมต่อซ้ำ ๆ IP ที่ซ้ำกันไม่จำเป็นต้องสลับกันตามกำหนดเวลาคงที่
สวิตช์อาจเรียนรู้ A และ B บนพอร์ตแยกกันได้อย่างถูกต้อง และไฟ LED แสดงลิงก์ทางกายภาพทั้งสองอาจยังแสดงสถานะปกติ ปัญหาคือตัวตน IP ที่ไม่เป็นเอกลักษณ์ ไม่จำเป็นต้องเกิดจากการสูญเสียทางแสงหรือพอร์ตเสียหาย gratuitous ARP หรือประกาศอื่นที่ส่งมาโดยไม่มีการร้องขออาจเกิดขึ้นระหว่างการเริ่มทำงานหรือการเปลี่ยนที่อยู่ตามปกติ ประกาศเพียงครั้งเดียวไม่ได้พิสูจน์ว่ามีการโจมตี ควรนำหลักฐานที่พบซ้ำ ๆ ว่า IP ของผู้ส่งเดียวกันสัมพันธ์กับหลาย MAC มาเทียบกับทะเบียนทรัพย์สิน
บันทึกแพ็กเก็ต ARP พร้อมเก็บ IP เป้าหมาย IP ของผู้ส่งคำตอบ MAC ของผู้ส่ง และเวลา จากนั้นเชื่อมโยงแต่ละ MAC กับพอร์ตสวิตช์และอุปกรณ์จริง หากพบการจับคู่ที่ขัดแย้งกันซ้ำ ๆ ควรตรวจสอบที่อยู่แบบคงที่ การตั้งค่าอุปกรณ์ที่นำมาเปลี่ยนทดแทน และแล็ปท็อปที่ใช้บำรุงรักษา การ ping ไม่สำเร็จเพียงครั้งเดียวเป็นหลักฐานไม่เพียงพอ การแยกอุปกรณ์ออกจากเครือข่ายหรือเปลี่ยนที่อยู่ต้องวางแผนให้ดำเนินการภายในช่วงเวลาบำรุงรักษาที่ได้รับอนุมัติ ไม่ใช่ทำตามสะดวกบนสายการผลิตที่กำลังทำงาน
จำกัดขอบเขตสาเหตุของปัญหาด้วยหลักฐานที่สังเกตได้
ขั้นแรก ตรวจสอบการตั้งค่า IP มาสก์ เส้นทาง และการเป็นสมาชิก VLAN จากนั้นตรวจสอบแคชของอุปกรณ์ปลายทางที่เริ่มการสื่อสารและบันทึกแพ็กเก็ตขณะทดลองเข้าถึงโดยตั้งใจ หากไม่เห็นคำขอ อาจเป็นเพราะมีการจับคู่อยู่ในแคช ใช้อินเทอร์เฟซอื่น หรือเลือกจุดบันทึกแพ็กเก็ตผิด หากมีคำขอแต่ไม่มีคำตอบ ควรตรวจสอบความพร้อมใช้งานของเป้าหมาย เส้นทางการส่งต่อภายใน VLAN เดียวกัน และการกำหนดที่อยู่ของเป้าหมาย หากการจับคู่คงที่แต่แอปพลิเคชันสื่อสารไม่ได้ ควรตรวจสอบพอร์ตแอปพลิเคชัน การควบคุมการเข้าถึง และบริการของอุปกรณ์
ก่อนล้างรายการแคช ให้เก็บการจับคู่เดิมและหลักฐานจากการบันทึกแพ็กเก็ตไว้ ล้างเฉพาะรายการที่เกี่ยวข้องบนอุปกรณ์ปลายทางที่ได้รับอนุญาต แล้วสังเกตการค้นหาที่อยู่อีกครั้ง การล้างแคชอาจทำให้กลับมาใช้งานได้ชั่วคราว หรืออาจเรียนรู้อุปกรณ์ผิดตัวอีกครั้งทันที จึงไม่ใช่การแก้ไขถาวร สำหรับการสื่อสารข้ามซับเน็ต ให้ตรวจสอบการเข้าถึงเกตเวย์ การกำหนดเส้นทาง และเส้นทางขากลับ การบรอดคาสต์ภายในเครือข่ายท้องถิ่นเพื่อค้นหาที่อยู่ของอุปกรณ์ปลายทางระยะไกลไม่สอดคล้องกับการเลือกฮอปถัดไปตามปกติ
เอกสารทางการของ FCTEL สำหรับสวิตช์อุตสาหกรรมแบบจัดการได้ที่มีพอร์ตไฟฟ้ากิกะบิต 24 พอร์ต และพอร์ตคอมโบออปติคัล/ไฟฟ้ากิกะบิตสี่พอร์ต ระบุฟังก์ชัน VLAN การทำมิเรอร์พอร์ต สถิติพอร์ต และการกรอง/ผูก MAC โดย VLAN ช่วยกำหนดขอบเขตบรอดคาสต์ การทำมิเรอร์ช่วยในการบันทึกแพ็กเก็ต ส่วนตาราง MAC และสถิติช่วยเชื่อมโยงการรับส่งข้อมูลกับพอร์ตทางกายภาพ ต้องตรวจสอบรายละเอียดเมนู เฟิร์มแวร์ และความสามารถในการทำมิเรอร์จากคู่มือของอุปกรณ์รุ่นนั้น ฟังก์ชันเหล่านี้ไม่ได้หมายความว่าจะตรวจพบหรือแก้ไขปัญหา IP ซ้ำได้ทุกกรณีโดยอัตโนมัติ
เก็บโทโพโลยีพอร์ต ทะเบียนที่อยู่ การจับคู่จากคำตอบ ARP และผลการอ่าน/เขียนจริงของแอปพลิเคชันไว้เป็นหลักฐานการตรวจรับ โดยครอบคลุมการเริ่มทำงานตามปกติ การเปลี่ยนอุปกรณ์ที่ได้รับอนุมัติ และการกลับมาทำงานหลังไฟฟ้าคืน ตรวจสอบว่า IP ทุกรายการถูกค้นหาและจับคู่ไปยังอุปกรณ์ที่ตั้งใจไว้ วิธีนี้เป็นการตรวจสอบลิงก์ทางกายภาพ การค้นหาที่อยู่ และบริการแอปพลิเคชันแยกจากกัน แทนการใช้ไฟ LED แสดงลิงก์หรือการ ping สำเร็จครั้งเดียวทดแทนการตรวจรับการสื่อสารในระบบอุตสาหกรรม
เอกสารอ้างอิงทางเทคนิค: RFC 826: การค้นหาที่อยู่อีเทอร์เน็ต. แหล่งข้อมูล FCTEL ที่เกี่ยวข้อง: บทความทางเทคนิค และ เอกสารผลิตภัณฑ์สวิตช์อุตสาหกรรม (ภาษาจีน).


