ทำความเข้าใจกับ Windows Routing Tables และเกตเวย์เริ่มต้น


11

หมายเหตุ: นี่เป็นห้องปฏิบัติการคอมพิวเตอร์ในบ้านของฉันไม่ใช่สภาพแวดล้อมทางธุรกิจ / การผลิต ฉันมีความสุขมากกว่าที่จะทำลายมันและแก้ไขได้อีกครั้งดังนั้นคำแนะนำใด ๆ ยินดีต้อนรับ!

สรุป

ฉันได้เพิ่มบทสรุปย่อนี้เพราะคำถามนี้ค่อนข้างยาว หากคุณต้องการรายละเอียดเพิ่มเติมเกี่ยวกับตารางเส้นทาง, การกำหนดค่า IP ฯลฯ ดูด้านล่าง

ฉันมี NIC สองสามเครื่องบนคอมพิวเตอร์ NIC หนึ่งอันคือ 172.16.200.1 / 24 เมื่อฉันพยายาม ping 172.16.200.2 (โฮสต์ที่มีอยู่ในเครือข่าย) ฉันได้รับคำตอบ จนถึงตอนนี้ดีมาก

เมื่อฉันพยายามเชื่อมต่อกับ 172.16.200.5 (หรือโฮสต์อื่นที่ไม่มีอยู่) คอมพิวเตอร์จะถอยกลับไปยังเส้นทางเริ่มต้นของฉัน (0.0.0.0 ผ่านเกตเวย์เริ่มต้นของฉัน 192.168.0.1) - สิ่งนี้จะถูกส่งออกโดย เราเตอร์ในบ้านของฉันที่มันหายไปในเส้นทางการวนรอบในเครือข่าย ISP ของฉัน รายละเอียดเพิ่มเติมจะได้รับด้านล่างหากจำเป็น แต่ฉันเดาว่ามีกูรูด้านนอกที่สามารถตอบคำถามนี้ได้แล้ว ...

คำถามของฉันคือ:

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

ฉันได้ทดสอบสิ่งนี้กับเครื่องไม่กี่เครื่อง (Server 2008 R2, Windows 7, Hyper-V Server 2012 R2, Windows Server 2012) และพวกเขาทั้งหมดทำงานในลักษณะเดียวกัน ฉันเริ่มยอมรับว่านี่เป็น 'พฤติกรรมปกติ' สำหรับเครื่อง Windows แต่ฉันอยากรู้ว่ามันจะหยุดหรือไม่

ฉันสร้าง Ubuntu VM ด้วยการกำหนดค่าเดียวกันกับ Windows VM ของฉัน - Ubuntu VM ไม่ถอยกลับไปยังเส้นทางเริ่มต้นเช่นเดียวกับ Windows VM ฉันได้เพิ่มตารางเส้นทางและผลลัพธ์สำหรับ Ubuntu VM และ Windows 8.1 VM ที่ด้านล่างของโพสต์นี้

รายละเอียดเพิ่มเติม

ฉันได้ทำการค้นหาอย่างละเอียดในเรื่องนี้และคำถามที่ใกล้เคียงที่สุดที่ฉันเห็นอยู่ที่นี่: การวนรอบเส้นทาง: TTL หมดอายุในระหว่างการขนส่งแต่น่าเสียดายที่มันไม่ตอบวิธีหยุดปัญหาหรือเปลี่ยนแปลงพฤติกรรมในคอมพิวเตอร์ คำตอบแนะนำให้แก้ไขการกำหนดเส้นทาง ฉันสามารถเปลี่ยนเราเตอร์เพื่อทิ้งทุกสิ่งที่กำหนดไว้สำหรับที่อยู่ IP ส่วนตัว (หรือส่งต่อไปยัง IP ของเพื่อนบ้านของฉัน hehehe) แต่นั่นจะไม่เปลี่ยนพฤติกรรมของคอมพิวเตอร์ของฉัน (ฉันยังอ่านคู่มือ subnetting ที่ยอดเยี่ยมที่อ้างอิงในคำตอบเดิมซึ่งสามารถดูได้ที่/server/49765/how-does-ipv4-subnetting-work )

ฉันมีปัญหาในการทำความเข้าใจว่าทำไมคอมพิวเตอร์ของฉันจะพยายามเชื่อมต่อกับที่อยู่ IP ส่วนตัวผ่านทางอินเทอร์เน็ตเมื่อพวกเขาได้ลองใช้อะแดปเตอร์ภายใน (ในช่วงเวลาสั้น ๆ ) จากนั้นก็ล้มเหลว - ตัวอย่างเช่นในการพยายาม ping โฮสต์ที่ฉันรู้ ไม่มีอยู่ในเครือข่ายของฉัน ...

Pinging 172.16.200.32 with 32 bytes of data:
Reply from 172.16.200.1: Destination host unreachable.
Reply from 203.29.XXX.YY: TTL expired in transit.
Reply from 203.29.XXX.YY: TTL expired in transit.
Reply from 203.29.XXX.YY: TTL expired in transit.

Ping statistics for 172.16.200.32:
    Packets: Sent = 4, Received = 4, Lost = 0 (0% loss),

แต่การส่ง Ping ไปยังโฮสต์ซึ่งมีอยู่ก็ใช้งานได้ ...

Pinging 172.16.200.2 with 32 bytes of data:
Reply from 172.16.200.2: bytes=32 time<1ms TTL=128
Reply from 172.16.200.2: bytes=32 time<1ms TTL=128
Reply from 172.16.200.2: bytes=32 time<1ms TTL=128
Reply from 172.16.200.2: bytes=32 time<1ms TTL=128

Ping statistics for 172.16.200.2:
    Packets: Sent = 4, Received = 4, Lost = 0 (0% loss),
Approximate round trip times in milli-seconds:
    Minimum = 0ms, Maximum = 0ms, Average = 0ms

ตกลงดังนั้นการตอบกลับจาก 172.16.200.1 คือคอมพิวเตอร์ของฉันที่บอกว่าไม่ได้รับคำตอบ ... แต่แล้วทำไมถึงพยายามเชื่อมต่อผ่านการเชื่อมต่ออินเทอร์เน็ตของฉันด้วย? ฉันมี 4 นิคส์และฉันใช้เครือข่าย 172.16.200.0 / 24 กับหนึ่งในนั้น ...

Ethernet adapter HyperV External (built in):

   Connection-specific DNS Suffix  . :
   Link-local IPv6 Address . . . . . : fe80::582c:97
   IPv4 Address. . . . . . . . . . . : 172.16.1.1
   Subnet Mask . . . . . . . . . . . : 255.255.255.0
   Default Gateway . . . . . . . . . :

Ethernet adapter Expansion-2 (middle) HomeNetwork:

   Connection-specific DNS Suffix  . : Home
   IPv4 Address. . . . . . . . . . . : 192.168.0.117
   Subnet Mask . . . . . . . . . . . : 255.255.255.0
   Default Gateway . . . . . . . . . : 192.168.0.1

Ethernet adapter Expansion-3 (bottom) iSCSI-1 :

   Connection-specific DNS Suffix  . :
   IPv4 Address. . . . . . . . . . . : 172.16.100.1
   Subnet Mask . . . . . . . . . . . : 255.255.255.0
   Default Gateway . . . . . . . . . :

Ethernet adapter Expansion-1 (top) iSCSI-2:

   Connection-specific DNS Suffix  . :
   IPv4 Address. . . . . . . . . . . : 172.16.200.1
   Subnet Mask . . . . . . . . . . . : 255.255.255.0
   Default Gateway . . . . . . . . . :

ดังนั้น ณ จุดนี้มันจะทำให้รู้สึกถึงการดูตารางเส้นทาง ...

===========================================================================
Interface List
 16...64 70 02 00 1f 03 ......Gigabit PCI Express Network Adapter #2
 15...64 70 02 00 40 48 ......Gigabit PCI Express Network Adapter
 23...00 24 1d 1d f8 35 ......TST Onboard
 17...64 70 02 00 32 c1 ......Gigabit PCI Express Network Adapter #3
  1...........................Software Loopback Interface 1
 28...00 00 00 00 00 00 00 e0 Microsoft ISATAP Adapter
 26...00 00 00 00 00 00 00 e0 Microsoft ISATAP Adapter #2
 13...00 00 00 00 00 00 00 e0 Teredo Tunneling Pseudo-Interface
 27...00 00 00 00 00 00 00 e0 Microsoft ISATAP Adapter #3
 29...00 00 00 00 00 00 00 e0 Microsoft ISATAP Adapter #4
===========================================================================

IPv4 Route Table
===========================================================================
Active Routes:
Network Destination        Netmask          Gateway       Interface  Metric
          0.0.0.0          0.0.0.0      192.168.0.1    192.168.0.117    410
        127.0.0.0        255.0.0.0         On-link         127.0.0.1    306
        127.0.0.1  255.255.255.255         On-link         127.0.0.1    306
  127.255.255.255  255.255.255.255         On-link         127.0.0.1    306
       172.16.1.0    255.255.255.0         On-link        172.16.1.1    266
       172.16.1.1  255.255.255.255         On-link        172.16.1.1    261
     172.16.1.255  255.255.255.255         On-link        172.16.1.1    261
     172.16.100.0    255.255.255.0         On-link      172.16.100.1    266
     172.16.100.1  255.255.255.255         On-link      172.16.100.1    266
   172.16.100.255  255.255.255.255         On-link      172.16.100.1    266
     172.16.200.0    255.255.255.0         On-link      172.16.200.1    266
     172.16.200.1  255.255.255.255         On-link      172.16.200.1    266
   172.16.200.255  255.255.255.255         On-link      172.16.200.1    266
      192.168.0.0    255.255.255.0         On-link     192.168.0.117    266
    192.168.0.117  255.255.255.255         On-link     192.168.0.117    266
    192.168.0.255  255.255.255.255         On-link     192.168.0.117    266
        224.0.0.0        240.0.0.0         On-link         127.0.0.1    306
        224.0.0.0        240.0.0.0         On-link     192.168.0.117    266
        224.0.0.0        240.0.0.0         On-link      172.16.100.1    266
        224.0.0.0        240.0.0.0         On-link      172.16.200.1    266
        224.0.0.0        240.0.0.0         On-link        172.16.1.1    261
  255.255.255.255  255.255.255.255         On-link         127.0.0.1    306
  255.255.255.255  255.255.255.255         On-link     192.168.0.117    266
  255.255.255.255  255.255.255.255         On-link      172.16.100.1    266
  255.255.255.255  255.255.255.255         On-link      172.16.200.1    266
  255.255.255.255  255.255.255.255         On-link        172.16.1.1    261
===========================================================================
Persistent Routes:
  None

ฉันแรกคิดว่าการวัดเส้นทางของ 0.0.0.0 คือผู้ร้าย - แต่เดิมคือ 6 ดังนั้นฉันจึงลองเปลี่ยนเป็น 410 ซึ่งไม่ได้เปลี่ยนพฤติกรรม (อย่างไรก็ตามฉันไม่เคยยุ่งกับตารางเส้นทางในเครื่องนี้มาก่อน) ฉันเปรียบเทียบมันกับเครื่อง Hyper-V 2012 R2 ฉันมี 3 เครือข่ายเดียวกัน (172.16.1.0, 172.16.100.0 และ 172.16.200.0) และฉันสังเกตเห็นว่าเครื่อง Hyper-V มีเมตริก 6 สำหรับ 0.0 .0.0 เส้นทางดังนั้นฉันเดาว่านี่เป็นเรื่องปกติและถูกต้อง ...

จากนั้นฉันพยายามเปลี่ยน 172.16.200.0 เป็นเส้นทางถาวรดังด้านล่าง แต่ก็ยังไม่ทำงาน

===========================================================================
Persistent Routes:
  Network Address          Netmask  Gateway Address  Metric
       172.16.200.0  255.255.255.0       172.16.1.1       1
===========================================================================

ฉันพยายามเพิ่มตัวชี้วัด (ฉันรู้ว่าต่ำกว่าเป็นที่ต้องการมากกว่า แต่เพียงใส่กล่องใช่มั้ย) …แน่นอนไม่มีโชค

ใน "การตั้งค่าขั้นสูง" ในหน้าต่างการเชื่อมต่อเครือข่ายฉันยืนยันว่าอะแดปเตอร์ 192.168.0.117 นั้นต่ำที่สุดในลำดับอะแดปเตอร์และการผูก ...

ดังนั้นหลังจากต่อสู้กับหัวของฉันประมาณเล็กน้อยฉันนิ่งงัน เห็นได้ชัดว่าการลบเส้นทาง 0.0.0.0 หยุดลง แต่แน่นอนว่ามันจะหยุดอินเทอร์เน็ตของฉันด้วย ...

ฉันจะหยุดเครื่องของฉันจากการพยายามที่จะผ่านเกตเวย์เริ่มต้นของฉัน 192.168.0.1 เมื่อพยายามเข้าถึงโฮสต์บน 172.16.200.0 ...

http://technet.microsoft.com/en-us/library/cc779122%28v=ws.10%29.aspx ("ตารางเส้นทาง IP: TCP / IP") ดูเหมือนว่าจะแนะนำว่า "เส้นทางเริ่มต้นมักจะส่งต่อ IP ดาตาแกรม (ซึ่งไม่มีการจับคู่หรือเส้นทางท้องถิ่นชัดเจน) ไปยังที่อยู่เกตเวย์เริ่มต้นสำหรับเราเตอร์ในเครือข่ายย่อยท้องถิ่น " ฉันจะได้เส้นทางที่ชัดเจนมากขึ้นไปอีก!

คำตอบที่นี่Windows เกตเวย์เส้นทางถาวรไม่พร้อมใช้งานดังนั้นเส้นทางเริ่มต้นที่ใช้แนะนำว่านี่เป็นพฤติกรรมปกติ - เมื่อมีการเพิ่มเส้นทางถาวรมันจะพยายามใช้เส้นทางนั้นถ้าเป็นไปได้ แต่จากนั้นกลับไปสู่เส้นทางเริ่มต้นเมื่อล้มเหลว แน่นอนว่าอาจมีปัญหาการจราจรที่ค่อนข้างรุนแรงไม่ต้องพูดถึงปัญหาด้านความปลอดภัย (ข้อมูลส่วนตัวที่รั่วไหลออกมาในอินเทอร์เน็ตหรืออย่างน้อยก็ ISP ของคุณเครือข่ายส่วนตัว…)

ข้อมูลเพิ่มเติมบางอย่าง: เซิร์ฟเวอร์นี้ใช้งาน NPS / RRAS โดยทั่วไป - ปิดใช้งานและแม้แต่การลบไม่ได้ทำอะไรเลย นอกจากนี้ฉันสร้าง VM 2008 R2 ใหม่เอี่ยมให้สอง NICs หนึ่งโดยตรงบนเครือข่าย 192.168.0.0 และอื่น ๆ บนเครือข่าย 172.16.200.0 และมันก็ทำสิ่งเดียวกัน…ฉันหวังว่าคุณจะบอกฉันได้ ใช้เวลาสักครู่ในการนี้

ฉันได้ตั้งค่าเราเตอร์ที่บ้านให้ส่งต่อสิ่งทั้งหมด 172.16.XX กลับไปที่คอมพิวเตอร์ของฉันเอง แต่นั่นเป็นวิธีแก้ปัญหา ...

มีอะไรฉันหายไปไหม มีบางสิ่งที่ชัดเจนบางที ฉันถามสิ่งที่เป็นไปไม่ได้หรือไม่?

[อัปเดต # 1 และ # 2]

ฉันขุดผ่านทุกบิตการกำหนดค่าบนเราเตอร์ของฉันและดูเหมือนจะไม่จัดการคำขอ ARP พร็อกซีใด ๆ - แม้ไม่มีการตั้งค่าใด ๆ ที่ฉันสามารถมองเห็นได้

ฉันใช้การตรวจสอบเครือข่าย MS 3.4 เพื่อทดสอบว่าเราเตอร์ตอบรับการร้องขอ ARP หรือไม่และไม่ใช่ ฉันเห็นว่ามีการส่งคำขอ ARP เมื่อพยายาม ping โฮสต์ที่ไม่มีอยู่จริงและฉันไม่ได้รับการตอบกลับ ARP ส่ง Ping โฮสต์ที่ไม่มีอยู่จริงทำให้ฉันมีคำตอบ ARP มันจะปลอดภัยที่จะสันนิษฐานว่า ณ จุดนี้เราเตอร์ของฉันไม่ได้จัดการคำขอ ARP ของพรอกซีหรือไม่

ตารางเส้นทางในเราเตอร์ WAS เป็นดังนี้:

 > route show
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
10.20.21.36     *               255.255.255.255 UH    0      0        0 ppp0
192.168.0.0     *               255.255.255.0   U     0      0        0 br0
default         *               0.0.0.0         U     0      0        0 ppp0

ฉันเพิ่มรายการเหล่านี้ด้านล่างเป็นการวัดช่องว่างหยุดชั่วคราว - มันหยุดแพ็คเก็ต "ที่หายไป" ที่แย่ของฉันไม่ให้ไปที่ ISP ของฉัน:

172.16.1.0      192.168.0.117   255.255.255.0   UG    1      0        0 br0
172.16.100.0    192.168.0.117   255.255.255.0   UG    1      0        0 br0
172.16.200.0    192.168.0.117   255.255.255.0   UG    1      0        0 br0

[อัพเดท # 3 - เพิ่มตารางเส้นทางการทำ Ubuntu และ Win8.1 VMs]

ตกลงดังนั้นฉันจึงสร้าง Ubuntu VM ใหม่และ Windows 8.1 VM ใหม่ Ubuntu VM ไม่ได้พยายามย้อนกลับไปเป็นเส้นทาง 0.0.0.0 แต่ Windows 8.1 ก็ทำได้ ฉันลองใช้ ping-a-non-existant-host เก่าและดูการรับส่งข้อมูลบนเราเตอร์ 172.16.1.1 ได้รับคำขอ ICMP จาก Windows 8.1 VM และส่งต่อ แต่ก็ไม่เคยเห็นการรับส่งข้อมูล ICMP ใด ๆ จาก Ubuntu VM

ตาราง Ubuntu VM อยู่ด้านล่าง:

Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface    MSS   Window irtt
0.0.0.0         172.16.1.1      0.0.0.0         UG    0      0        0 eth0     0     0      0
169.254.0.0     0.0.0.0         255.255.0.0     U     1000   0        0 eth1     0     0      0
172.16.1.0      0.0.0.0         255.255.255.0   U     1      0        0 eth0     0     0      0
172.16.200.0    0.0.0.0         255.255.255.0   U     1      0        0 eth1     0     0      0

ตาราง Windows 8.1 อยู่ด้านล่าง:

===========================================================================
Interface List
  9...00 15 5d 01 4c 1c ......Microsoft Hyper-V Network Adapter #2
  3...00 15 5d 01 4c 08 ......Microsoft Hyper-V Network Adapter
  1...........................Software Loopback Interface 1
  4...00 00 00 00 00 00 00 e0 Microsoft ISATAP Adapter
 13...00 00 00 00 00 00 00 e0 Microsoft ISATAP Adapter #2
===========================================================================

IPv4 Route Table
===========================================================================
Active Routes:
Network Destination        Netmask          Gateway       Interface  Metric
          0.0.0.0          0.0.0.0       172.16.1.1     172.16.1.101      5
        127.0.0.0        255.0.0.0         On-link         127.0.0.1    306
        127.0.0.1  255.255.255.255         On-link         127.0.0.1    306
  127.255.255.255  255.255.255.255         On-link         127.0.0.1    306
       172.16.1.0    255.255.255.0         On-link      172.16.1.101    261
     172.16.1.101  255.255.255.255         On-link      172.16.1.101    261
     172.16.1.255  255.255.255.255         On-link      172.16.1.101    261
     172.16.200.0    255.255.255.0         On-link      172.16.200.1    261
     172.16.200.1  255.255.255.255         On-link      172.16.200.1    261
   172.16.200.255  255.255.255.255         On-link      172.16.200.1    261
        224.0.0.0        240.0.0.0         On-link         127.0.0.1    306
        224.0.0.0        240.0.0.0         On-link      172.16.1.101    261
        224.0.0.0        240.0.0.0         On-link      172.16.200.1    261
  255.255.255.255  255.255.255.255         On-link         127.0.0.1    306
  255.255.255.255  255.255.255.255         On-link      172.16.1.101    261
  255.255.255.255  255.255.255.255         On-link      172.16.200.1    261
===========================================================================
Persistent Routes:
  None

1. เราเตอร์ / ไฟร์วอลล์ของคุณใช้ proxy ARP สำหรับพื้นที่ที่อยู่ภายในหรือไม่ 2. ตารางเส้นทางในเราเตอร์ / ไฟร์วอลล์ของคุณมีลักษณะอย่างไร
joeqwerty

1
หากคุณต้องการหยุดแพ็คเก็ตอวกาศ RFC 1918 ออกไปเพียงเส้นทางโมฆะ 10/8, 172.16 / 12 และ 192.168 / 16 (หรือเส้นทางพวกเขากลับไปที่ LAN ของคุณ) ขาดการจัดเรียงพิเศษแพ็กเก็ตเหล่านั้นไม่ควรเข้า / ออกเครือข่ายของคุณ แม้ว่าฉันจะไม่แน่ใจเลยว่านั่นเป็นวิธีที่ดีที่สุด (อาจทำให้บางสิ่งแตกต่างกัน)
CVn

พิจารณาซึ่งรุ่นของ Windows ที่คุณกำลังพูดถึงและเสียงทั่วไปของโพสต์นี้ผมคาดเดาคุณอยู่ในสภาพแวดล้อมขององค์กรซึ่งในกรณีนี้คุณอาจต้องการที่จะต้องพิจารณาการตั้งค่าสถานะโพสต์นี้สำหรับความสนใจของผู้ดูแลและขอให้มีการโยกย้ายไปยังเซิร์ฟเวอร์ของความผิดพลาด
CVn

สวัสดี Michael ขอบคุณสำหรับคำตอบ ฉันได้เพิ่มเส้นทางสำหรับ 10/8, 172.16 / 12 และ 192.168 / 16 บนเราเตอร์ของฉันเพื่อกลับไปที่คอมพิวเตอร์ของฉัน (192.168.0.117) ดังนั้นพวกเขาจึงไม่ได้รับการส่งผ่านอินเทอร์เน็ต ฉันอยากรู้ว่านี่คือสิ่งที่เราเตอร์ทุกคนต้องมีการกำหนดค่า? นอกจากนี้ฉันควรชี้แจงว่านี่เป็นห้องปฏิบัติการที่บ้านและไม่ใช่สภาพแวดล้อมขององค์กรหรือธุรกิจ ฉันแค่ใช้มันเพื่อการศึกษาเท่านั้น
Gund

คำตอบ:


2

failback เส้นทางเริ่มต้นคือพฤติกรรมปกติตั้งแต่ Vista คุณสามารถอ่านเกี่ยวกับเรื่องนี้ในบทความต่อไปนี้: การเลือกแหล่งที่อยู่บน homed หลายคอมพิวเตอร์

ปัญหาการวนซ้ำที่เกิดจากเราเตอร์ที่กำหนดค่าผิดพลาดซึ่งส่งแพ็กเก็ตกลับมาโดยใช้ซับเน็ตที่แตกต่างกันแทนที่จะปล่อยพวกเขา


ลิงก์คำตอบเดียวจะไร้ประโยชน์หากลิงก์หยุดทำงาน โปรดอธิบายวิธีแก้ปัญหาในขณะที่ยังคงอ้างอิงถึงแหล่งที่มา
Raystafarian

ขออภัยเพิ่มรายละเอียดบางอย่าง
mtm

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