บนเครือข่ายในบ้านของฉัน (192.168.1.0/24) ฉันพยายามใช้iptables
โคลนการรับส่งข้อมูล TCP / UDP wifi ไปยัง / จาก Xbox One ของฉันไปยังเดสก์ท็อป Windows 10 ของฉันอย่างเงียบ ๆ เพื่อการส่งแพ็คเก็ตผ่าน Wireshark
เนื่องจากข้อ จำกัด ด้านตำแหน่งการ จำกัด การเชื่อมต่ออีเธอร์เน็ตฉันพยายามทำผ่านจุดเชื่อมต่อไร้สายสองจุดที่ใช้เครือข่ายเดียวโดยที่พอร์ต LAN ของพวกเขาเป็นเพียงการเชื่อมต่ออีเทอร์เน็ตในการตั้งค่า:
|<--[Ethernet To Cable Modem]
| \ \ \
| \ \ \
| \ \ \
| _________________________ \ \ \
└--| NETGEAR R6260 | | | |
| SSID: TheNewNetwork(5G) | | | |
| stock firmware, gateway | | | |
┌--|_192.168.1.1_____________| | | |
| ________________________ / / /
| ╙|_ PRINTER 192.168.1.14__|/ / /
| ________________________/ / /
| ╙|_ AMAZON 192.168.1.15__/| / /
| ______________________/_ / /
| ╙|_ AMAZON 192.168.1.16___| /
| _____________________________
| ╙|_ DESKTOPWIN10 192.168.1.10__|
| __________________________
| ╙|_ Nexus-5X 192.168.1.13___|
| ___________________________
| ╙|_ GALAXY-S8 192.168.1.17___|
|
|
| \ \ \
| \ \ \
| _______________________ \ \ \
└--| LINKSYS E2500 | | | |
| SSID: TheOtherNetwork | | | |
| Tomato w/ iptables | | | |
|_192.168.1.2___________| | | |
________________________/ / /
╙|_ XBOXONE 192.168.1.12_/_|/ /
/ / /
Linksys E2500 ได้รับการกระพริบด้วย Tomato V1.28 (สร้าง 140) และใช้งานiptables
เฟรมเวิร์ก DHCP และ NAT ปิดอยู่ Xbox เชื่อมต่อกับจุดเชื่อมต่อไร้สายที่ไม่ปลอดภัย (SSID: TheOtherNetwork )
ทุกอย่างอื่นอยู่ใน Netgear ที่ปลอดภัยด้วย WPA2 (SSID: TheNewNetwork ) ตามปกติ Linksys IP ( 192.168.1.2 ) เป็นแบบสแตติกและ Windows ( 192.168.1.10 ) และ Xbox ( 192.168.1.12 ) IP ถูกกำหนดโดยการสำรอง DHCP บน Netgear ซึ่งยังกำหนดที่อยู่ DHCP ที่ไม่ได้จองไว้ให้กับทุกสิ่ง (เครื่องพิมพ์ Amazon Fire TV Sticks [x2], สมาร์ทโฟน) และจัดการ NAT สำหรับการรับส่งข้อมูล WAN การจัดการเครือข่ายนี้ดูเหมือนว่าจะทำงานได้อย่างไร้ที่ติสำหรับทุกกรณีการใช้งาน "ปกติ"
แต่เดิมฉันคิดว่าฉันสามารถโยนกฎการโคลนแพ็กเก็ต iptables
บน Linksys ที่ตรงกับ IP ของ Xbox เช่น:
iptables -A PREROUTING -t mangle -s 192.168.1.12 -j ROUTE --gw 192.168.1.10 --tee
iptables -A PREROUTING -t mangle -d 192.168.1.12 -j ROUTE --gw 192.168.1.10 --tee
... แต่การค้นหาแพ็คเก็ต Xbox น้อยมากในฟีด Wireshark ของฉันฉันตัดสินใจที่จะขุดมากขึ้นถ้ากฎ (ที่ หมายถึงการจับปริมาณการรับส่งข้อมูล Xbox ทั้งหมด) แม้กระทั่งถูกทริกเกอร์ / จับคู่ (เนื่องจากต้องเกิดขึ้นก่อนที่ROUTE
เป้าหมายจะเข้าสู่การเล่น
ดังนั้นเพื่อให้ได้สแน็ปช็อตแพ็คเก็ต - ทริกเกอร์เต็มรูปแบบฉันตั้งกฎที่คล้ายกันสำหรับแต่ละที่อยู่ IP บนเครือข่ายด้วย-j ACCEPT
เป้าหมายที่เรียบง่ายและด้วยกฎ "จับทั้งหมด" ในตอนท้ายของห่วงโซ่ที่ไม่ควรทริกเกอร์ ไม่ว่าอะไร จากนั้นฉันก็ยิง Xbox ขึ้นมาและเล่นเกมยิงปืนคนแรกทางออนไลน์ประมาณหนึ่งนาที (ซึ่งใช้ได้ดีที่สุดเท่าที่ฉันจะบอกได้จาก Xbox)
หลังจากหนึ่งนาทีนี่คือสิ่งที่ฉันได้รับจากiptables
สรุปรายการกฎ:
root@E2500-Host:/# iptables -t mangle -vnL PREROUTING
Chain PREROUTING (policy ACCEPT 0 packets, 0 bytes)
pkts bytes target prot opt in out source destination
1 68 ACCEPT all -- * * 192.168.1.12 0.0.0.0/0
0 0 ACCEPT all -- * * 0.0.0.0/0 192.168.1.12
408 60499 ACCEPT all -- * * 192.168.1.10 0.0.0.0/0
0 0 ACCEPT all -- * * 0.0.0.0/0 192.168.1.10
0 0 ACCEPT all -- * * 192.168.1.1 0.0.0.0/0
0 0 ACCEPT all -- * * 0.0.0.0/0 192.168.1.1
0 0 ACCEPT all -- * * 192.168.1.13 0.0.0.0/0
0 0 ACCEPT all -- * * 0.0.0.0/0 192.168.1.13
1 351 ACCEPT all -- * * 192.168.1.14 0.0.0.0/0
0 0 ACCEPT all -- * * 0.0.0.0/0 192.168.1.14
0 0 ACCEPT all -- * * 192.168.1.15 0.0.0.0/0
0 0 ACCEPT all -- * * 0.0.0.0/0 192.168.1.15
0 0 ACCEPT all -- * * 192.168.1.16 0.0.0.0/0
0 0 ACCEPT all -- * * 0.0.0.0/0 192.168.1.16
1 344 ACCEPT all -- * * 0.0.0.0/0 0.0.0.0/0
อะไร?!? แพ็กเก็ตที่เลวร้ายอย่างหนึ่งจาก Xbox? ฉันเล่นเกมยิงคนแรกออนไลน์เป็นเวลาหนึ่งนาทีโดยมีตำแหน่งของฝ่ายตรงข้ามในโลกแห่งความจริงหลายสิบตำแหน่งที่อัปเดตจากเซิร์ฟเวอร์หลายครั้งต่อวินาที (ฉันได้อ่านเกมนี้พอที่จะคาดหวังว่า UDP สำหรับการแลกเปลี่ยนนี้) จะต้องมีการรับส่งข้อมูลมากกว่านั้นระหว่าง 192.168.1.12และโลกภายนอกและต้องได้รับการจัดการโดยเราเตอร์ Linksys ที่ทำงานอยู่iptables
เนื่องจาก Xbox เชื่อมต่อกับอินเทอร์เน็ตผ่านทางจุดเชื่อมต่อที่ไม่ปลอดภัยของ Linksysนั่นคือ TheOtherNetwork
ตามหมายเหตุด้านที่อาจเกี่ยวข้อง: แปลกประหลาดอื่น ๆ ได้แก่ 0 แพ็คเก็ตที่ถูกเรียกสำหรับการรับส่งข้อมูลขาเข้าไปยัง IP ท้องถิ่นใด ๆ (แม้ว่าอาจจะไม่คาดคิดสำหรับอุปกรณ์ที่ไม่ใช่ Xbox ในจุดเชื่อมต่ออื่น) และความจริงที่ว่ามันจับแพ็คเก็ตขาออกจำนวนมาก จากเดสก์ท็อป Windows 192.168.1.10 (ซึ่งอีกครั้งไม่ได้อยู่ใน Linksys SSID ดังนั้นฉันอาจไม่ได้คาดหวังว่า Linksys จะเห็นสิ่งเหล่านี้)
เป็นไปได้อย่างไรiptables
ที่แพ็กเก็ต Xbox หายไปที่อนุญาตให้เกมออนไลน์ทำงานอย่างรวดเร็ว