Score:-1

แพ็กเก็ตดรอปของเราเตอร์

ธง cn

ฉันพบปัญหาแปลกๆ เกี่ยวกับการเชื่อมต่อผ่านสายกับเราเตอร์บน LAN ซึ่งทราฟฟิก TCP หลุดและบันทึกเป็นแพ็กเก็ตแยกส่วน

สถานการณ์จำลองมีการตั้งค่า MTU ที่ 1500 บนไคลเอนต์เครือข่ายและบนอะแดปเตอร์อีเธอร์เน็ตของเราเตอร์ (ตาม แสดง ip addr).

ตัวอย่างข้อความแพ็กเก็ตที่ถูกทิ้ง (แบ่งออกเป็นหลายบรรทัดเพื่อให้อ่านง่าย):

12 พฤษภาคม 09:44:05 เคอร์เนล: DROP IN=eth0 OUT=tun11 MAC=<removed> 
SRC=<IP ของเดสก์ท็อป> DST=<IP ปลายทางภายนอก> 
LEN=60 TOS=0x00 PREC=0x00 TTL=63 ID=54356 DF PROTO=TCP SPT=53370 DPT=443 SEQ=3216568911 ACK=0 
WINDOW=64240 RES=0x00 SYN URGP=0 OPT (020405B40402080A002E76880000000001030307) MARK=0x8000000 

จากการอ่านเพียงเล็กน้อยบน TCP/IP ฉันเห็นว่าตัวเลือกนั้น 0204 อ้างถึง MSS และขนาดน่าจะเป็น 1460แม้ว่าฉันจะพยายามเข้าใจว่าไบต์ที่เหลือหมายถึงอะไร (0402 080A 002E 7688 0000 0000 0103 0307). ฉันไม่เห็นกฎไฟร์วอลล์บนเราเตอร์ที่ใช้เครื่องหมายเลย แต่มีความรู้ netfilter แบบละเอียดที่จำกัด

เมื่อฉันลองคำนวณขนาด MTU สูงสุดผ่าน ping -M ทำ <router IP> -c 2 -s 1500 การตอบสนองของลูกค้าคือ ข้อผิดพลาดในเครื่อง: ข้อความยาวเกินไป mtu=1500 หรือเมื่อ ปิง cmd ใช้ขนาด MTU ที่เล็กลงเพื่อทดสอบ ไม่มีการตอบสนอง / แพ็กเก็ตล้มเหลวทั้งหมด

ในอดีตฉันลด MTU ลง 28 แล้วรับสถานการณ์หลัง ฉันคิดว่านี่หมายความว่า MTU นั้นเหมาะสม แต่แพ็กเก็ตยังคงถูกทิ้ง ตัวอย่างรายการบันทึกเราเตอร์ของดรอปนี้:

12 พฤษภาคม 13:01:01 เคอร์เนล: DROP IN=eth0 OUT= MAC=<removed>
SRC=< IP ของเดสก์ท็อป > DST= < IP ของเราเตอร์ > 
LEN=1378 TOS=0x00 PREC=0x00 TTL=64 ID=0 DF 
PROTO=ประเภท ICMP=8 รหัส=0 ID=5 SEQ=1 MARK=0x8000000 

เมื่อฉันระบุ MTU ที่เหมาะสมกว่าโดยใช้ ปิง ทดสอบและรีบูตเดสก์ท็อป แพ็กเก็ตยังคงแยกส่วนและ ปิง การทดสอบจะส่งคืน MTU ที่ต่ำกว่า (น้อยกว่า 28 ไบต์ในแต่ละครั้ง)

เดสก์ท็อปทำงาน คูบุนตู 20.04.4.

หลังจากพยายามทำความเข้าใจเกี่ยวกับสถานการณ์นี้มาระยะหนึ่งแล้ว ฉันได้ลองเพิ่ม ตามกฎ iptables บนเราเตอร์:

-A INPUT -m conntrack --ctstate ที่เกี่ยวข้อง ก่อตั้ง -j ยอมรับ
-A FORWARD -m conntrack --ctstate DNAT -j ยอมรับ

แต่สิ่งนี้ไม่ได้แก้ปัญหา

สิ่งนี้ไม่ ไม่ เกิดขึ้นบนอุปกรณ์ Android ที่เชื่อมต่อกับเราเตอร์เดียวกันผ่าน WiFi เราเตอร์จะรีสตาร์ทข้ามคืนตามกำหนดเวลาและ Xboxes จะพบแพ็กเก็ต frag / drop สถานการณ์เดียวกันจนกว่าจะรีสตาร์ทอย่างน้อยหนึ่งครั้ง XBox หนึ่งเครื่องเชื่อมต่อผ่าน WiFi หนึ่งเครื่องเชื่อมต่อกับเราเตอร์ที่เชื่อมต่อกับเราเตอร์ที่มีปัญหา

ทราฟฟิกระหว่างเราเตอร์ WiFi และเราเตอร์ Edge ดูเหมือนจะไม่ได้รับผลกระทบ - ไม่มีร่องรอยของแพ็กเก็ตหลุดเนื่องจากการแตกแฟรกเมนต์ที่เลเยอร์นั้น

วิธีแก้ปัญหา

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

eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500

อย่างไรก็ตามฉันไม่เข้าใจ ทำไม เดอะ ติดตามเส้นทาง เห็นได้ชัดว่าแก้ไขปัญหาได้ ข้อเสนอแนะใด ๆ จะได้รับการขอบคุณ ณ จุดนี้

โพสต์คำตอบ

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