Minecraft หาเซิร์ฟเวอร์ LAN ได้อย่างไร


0

ไคลเอนต์ Minecraft (เมื่อคุณเข้าสู่โหมด "มัลติเพลเยอร์") ระบุว่า "สแกน LAN สำหรับเซิร์ฟเวอร์ในพื้นที่ ... "

มันกำลังทำอะไรอยู่?

นี่คือปัญหาของฉัน: ถ้าคอมพิวเตอร์ A และคอมพิวเตอร์ B เชื่อมต่อกันผ่าน Switch1 คอมพิวเตอร์ A สามารถเรียกใช้ไคลเอนต์ Minecraft และค้นหาเซิร์ฟเวอร์ Minecraft บนคอมพิวเตอร์ B. แต่ ถ้าคอมพิวเตอร์ C เชื่อมต่อผ่าน Switch2, C ไม่สามารถมองเห็นเซิร์ฟเวอร์ที่ทำงานบน B อย่างไรก็ตาม C สามารถ ping B และ C สามารถเชื่อมต่อกับเซิร์ฟเวอร์ที่ 10.1.10.143:64134 ถ้า IP / พอร์ตนี้ถูกป้อนโดยตรง

ดังนั้นกลไกที่ไคลเอ็นต์ค้นหาเซิร์ฟเวอร์ถูกบล็อกโดย Switch2 UPnP นี้หรือไม่ หรือสิ่งที่คล้ายกัน

มันคือ ความเจ็บปวดอย่างมาก เพื่อติดตามที่อยู่ IP ที่เลื่อนลอยและเปลี่ยนหมายเลขพอร์ตทุกครั้งที่คุณเริ่มเซิร์ฟเวอร์ minecraft


หาก switch1 และ switch2 อยู่ในเครือข่ายเลเยอร์ 2 เดียวกัน (เช่นไม่ได้กำหนดเส้นทาง) ก็จะทำงานได้ดังนั้นฉันเดาว่าคุณกำลังกำหนดเส้นทางระหว่างเครือข่ายทั้งสองนี้ คุณต้องการแยกสองสิ่งนี้ออกจากกันหรือไม่?
Paul

@ พอลทั้งคู่อยู่ใน LAN เดียวกัน (ใช่เลเยอร์ 2) แต่ Switch2 กำลังกรองเซอร์วิสสำคัญอยู่ ฉันพยายามคิดออกว่าอะไร บางที HTTPMU ไม่ทำงาน (ซึ่งเป็นพื้นฐานสำหรับ UPnP) แต่ฉันหวังว่าบางคนที่นี่สามารถบอกฉันได้ว่า Minecraft ค้นหาเซิร์ฟเวอร์ของมันอย่างไร
Fixee

ที่น่าสนใจ - ถ้าสวิตช์หนึ่งและสวิตช์สองถูกเชื่อมต่อที่ชั้น 2 แล้วไม่ควรมีการกรองใด ๆ - โดยปกติแล้วการตรวจสอบประเภทนั้นจะเกิดขึ้นที่การจัดเส้นทางในระดับการสลับเราสนใจเฉพาะที่อยู่ mac เท่านั้นในขณะที่ upnp / ssdp ทำงานที่ ระดับมัลติคาสต์ส่งไปที่มัลติคาสต์แม็ค ดังนั้นสิ่งใดในสวิตช์ของคุณที่บล็อกการรับส่งข้อมูลแบบหลายผู้รับ
Paul

@Paul สวิตช์เป็นเราเตอร์ wi-fi (ที่คอมพิวเตอร์ทุกเครื่องอยู่บน LAN เดียวกันภายในโดเมน DHCP ของเราเตอร์) อาจกำลังทำการกรองบางอย่าง แต่ฉันไม่สามารถเข้าใจได้ ไม่มีการตั้งค่าที่ชัดเจนที่ฉันสามารถค้นหาตัวกรองการออกอากาศ UDP ได้
Fixee

คำตอบ:


3

ฉันทำการจับแพ็คเก็ตบน Wireshark และสิ่งที่ดีที่สุดที่ฉันสามารถบอกได้มันใช้ IGMPv2 แพ็คเก็ตที่ส่งไปยังที่อยู่แบบมัลติคาสต์ที่ใช้น้อยกว่า (224.0.2.60) ขอให้ทุกคนที่ใช้เซิร์ฟเวอร์ Minecraft รายงานกลับ มันใช้ "รายงานสมาชิก" เพื่อทำสิ่งนี้

สำหรับ nerds นี่คือข้อมูลการถ่ายโอนข้อมูลแพ็คเก็ตที่สมบูรณ์:

Frame 10: 46 bytes on wire (368 bits), 46 bytes captured (368 bits) on interface 0
    Interface id: 0 (\Device\NPF_{F0A28F43-6094-447F-A150-434AFC4BB19B})
    Encapsulation type: Ethernet (1)
    Arrival Time: Aug 25, 2016 22:25:55.171363000 US Mountain Standard Time
    [Time shift for this packet: 0.000000000 seconds]
    Epoch Time: 1472189155.171363000 seconds
    [Time delta from previous captured frame: 0.235431000 seconds]
    [Time delta from previous displayed frame: 0.235431000 seconds]
    [Time since reference or first frame: 1.234950000 seconds]
    Frame Number: 10
    Frame Length: 46 bytes (368 bits)
    Capture Length: 46 bytes (368 bits)
    [Frame is marked: False]
    [Frame is ignored: False]
    [Protocols in frame: eth:ethertype:ip:igmp:igmp]
    [Coloring Rule Name: Routing]
    [Coloring Rule String: hsrp || eigrp || ospf || bgp || cdp || vrrp || carp || gvrp || igmp || ismp]
Ethernet II, Src: Giga-Byt_91:9c:dc (fc:aa:14:91:9c:dc), Dst: IPv4mcast_02:3c (01:00:5e:00:02:3c)
    Destination: IPv4mcast_02:3c (01:00:5e:00:02:3c)
        Address: IPv4mcast_02:3c (01:00:5e:00:02:3c)
        .... ..0. .... .... .... .... = LG bit: Globally unique address (factory default)
        .... ...1 .... .... .... .... = IG bit: Group address (multicast/broadcast)
    Source: Giga-Byt_91:9c:dc (fc:aa:14:91:9c:dc)
        Address: Giga-Byt_91:9c:dc (fc:aa:14:91:9c:dc)
        .... ..0. .... .... .... .... = LG bit: Globally unique address (factory default)
        .... ...0 .... .... .... .... = IG bit: Individual address (unicast)
    Type: IPv4 (0x0800)
Internet Protocol Version 4, Src: 192.168.1.46, Dst: 224.0.2.60
    0100 .... = Version: 4
    .... 0110 = Header Length: 24 bytes
    Differentiated Services Field: 0x00 (DSCP: CS0, ECN: Not-ECT)
    Total Length: 32
    Identification: 0x4347 (17223)
    Flags: 0x00
        0... .... = Reserved bit: Not set
        .0.. .... = Don't fragment: Not set
        ..0. .... = More fragments: Not set
    Fragment offset: 0
    Time to live: 1
    Protocol: IGMP (2)
    Header checksum: 0x0000 [validation disabled]
        [Good: False]
        [Bad: False]
    Source: 192.168.1.46
    Destination: 224.0.2.60
    [Source GeoIP: Unknown]
    [Destination GeoIP: Unknown]
    Options: (4 bytes), Router Alert
        Router Alert (4 bytes): Router shall examine packet (0)
            Type: 148
                1... .... = Copy on fragmentation: Yes
                .00. .... = Class: Control (0)
                ...1 0100 = Number: Router Alert (20)
            Length: 4
            Router Alert: Router shall examine packet (0)
Internet Group Management Protocol
    [IGMP Version: 2]
    Type: Membership Report (0x16)
    Max Resp Time: 0.0 sec (0x00)
    Header checksum: 0x07c3 [correct]
    Multicast Address: 224.0.2.60

นี่คือดัมพ์แพ็กเก็ต raw:

0000   01 00 5e 00 02 3c fc aa 14 91 9c dc 08 00 46 00  ..^..<........F.
0010   00 20 43 47 00 00 01 02 00 00 c0 a8 01 2e e0 00  . CG............
0020   02 3c 94 04 00 00 16 00 07 c3 e0 00 02 3c        .<...........<

ดังนั้นเพื่อตอบปัญหาของคุณคุณอาจปิดมัลติคาสต์บนเราเตอร์ของคุณหรือปิดใช้งาน IGMP ฉันไม่คุ้นเคยกับธงอย่างสมบูรณ์ แต่ดูเหมือนว่าอาจมีบางอย่างในฟิลด์ตัวเลือก / การแจ้งเตือนเราเตอร์ ... อาจบอกให้เราเตอร์ไม่ส่งต่อมัลติคาสต์นอกเครือข่ายย่อย แต่นั่นเป็นเพียงการเดา

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.