ความรู้คู่ความก้าวหน้า
 
การเลือก forward IP packet ของ router ตามหลัก longest match




ช้อ link แนะนำ ก่อนจะอ่านบความนี้

หากท่านใดที่ยังไม่แม่นในเรื่อง routing แล้ว ผมขอแนะนำให้ไปดู VDO ข้างล่างนี้ก่อนนะครับ 

CCNA kochaiwat Vol5 Routing Concept

https://www.youtube.com/watch?v=nJ10dy-FjEk


เริ่มกันเลย สำหรับบทความนี้:

จากที่มีคนมาถาม เพื่อขอปรึกษาเกี่ยวกับการ forward IP packet ของ router ตามหลัก longest match ดังภาพข้างล่าง







Question: According to the routing table, where will the router send a packet destined for 10.1.5.75?

คำถาม: ตาม routing table แล้ว, router จะส่ง packet ที่ถูกกำหนด destination เป็น 10.1.5.75 ไปยังที่ไหน (ส่ง packet นี้ไปยัง next-hop ไหน)?

คำตอบที่ถูกเฉลย คือ: 
Router จะ forward IP packet ที่มี destination 10.1.5.75 ไปยัง next-hop 10.1.2.2 

แต่มีคนถามมาว่า ทำไม 10.1.3.3 จึงไม่ใช่คำตอบที่ถูก ทั้งๆ ที่มี prefix เป็น 29 (/29) ซึ่งเป็น prefix ที่ยาวที่สุด ทำไม ทำไม และทำไม?


เฉลยด้วยภาพ และตามด้วยคำอธิบายครับ




เฉลยครับ ว่าทำไม next-hop ถึงเป็น 10.1.2.2 ให้ดูภาพข้่างบนประกอบนะครับ
-------------------------------------------------
Step 1: Network ID ที่จะถูกเลือก และใช้ next-hop ในการ forward IP packet ที่มี destination 10.1.5.75 จะต้องเป็น Network ID ที่มี range ของ Available IP address ที่ซึ่งจะต้องครอบคลุม Destination IP 10.1.5.75 ก่อน เป็นอันดับแรก ซึ่ง Network ที่เข้ารอบแรก มีดังนี้ (ผมเรียกว่า "เข้าวิน')
- 10.1.5.0/24 (Available IP: 10.1.5.1 - .254)
- 10.1.5.64/28 (Available IP: 10.1.5.65 - .79)
- 10.1.5.64/27 (Available IP: 10.1.5.65 - 255)
Note: 10.1.5.64/29 ไม่เข้าวิน เพราะมี Available IP: 10.1.5.65 - .70 เท่านั้น แต่ Destination IP address ที่เราสนใจเคือ 10.1.5.75
Step 2: หลังจากที่ได้ Network ID ที่เข้าวินในรอบแรกแล้ว ก็มาถึงรอบตัดเชือก คือ ดูที่ Prefix ที่ยาวที่สุด ซึ่งเป็นไปตามกฎ longest match
นั่นคือ Network ID 10.1.5.64/28 เป็นผู้ชนะ เพราะมี bit ที่ match มากที่สุด
ดังนั้น IP packet ที่มี destination address เป็น 10.1.5.75 จะถูก forward ไปยัง next-hop ที่สัมพันธ์กับ Network ID 10.1.5.64/28 นั่นคือ packet นี้จะถูก forward ไปยัง next-hop 10.1.2.2


เรามาลองพิสูจน์กันด้วย Lab:




คำเตือน!!!!!

ในชีวิตจริงแล้ว สำหรับการใช้งานแบบ Unicast ห้ามใช้ IP address ซ้ำกันนะครับ แต่สำหรับในบทความนี้ และใน lab นี้แล้ว มันเป็นกรณีพิเศษนะครับ เพราะผมต้องการที่จะแสดงให้ท่านเห็นว่า ในกรณีที่ R2, R3, และ R5 ใช้ IP address 10.1.5.75 ซ้ำกันแล้วนั้น, เมื่อ R1 ต้องการจะ forward IP packet ที่มี destination 10.1.5.75 แล้ว, R1 จะ forward IP packet นี้ออกไปยัง next-hop ไหน?

สำหรับการใช้งานแบบ Anycast แล้ว จะสามารถใช้งาน IP address ซ้ำกันได้นะครับ แต่ขอไม่กล่าวถึงในรายละเอียด (แต่ในตัวอย่างนี้เป็นการใช้งานแบบ Unicast นะครับ)

พิสูจน์ด้วยผลของ Lab กันนะครับ ลองเอาไปทำกันดูตามแนวทางนี้นะครับ
จากภาพ Diagram จะเห็นว่า R2, R3, R5 มี IP address 10.1.5.75 บน Interface Loopback 0 เหมือนกัน แต่มีแค่ R4 ที่ไม่สามารถ configure 10.1.5.75 ได้ เพราะ Network 10.1.5.64/29 มี Broadcast คือ 10.1.5.71 แต่ 10.1.5.75 มันอยู่นอก range ดังนั้นผมจึงต้องใช้ IP address เบอร์ 10.1.5.70/29 เพื่อทำให้เกิด Network ID 10.1.5.64/29 บน R4 แล้วให้ R4 update network นี้มาให้ R1 ผ่านทาง routing protocol OSPF

=======================================

R2 Configuration
---------------------------------
!
interface Loopback0
ip address 10.1.5.75 255.255.255.0
ip ospf network point-to-point
!
interface Ethernet0/0
ip address 10.1.1.2 255.255.255.0
ip ospf network point-to-point
!
router ospf 1
router-id 2.2.2.2
network 0.0.0.0 255.255.255.255 area 0
!



=======================================

R3 Configuration
---------------------------------
!
interface Loopback0
ip address 10.1.5.75 255.255.255.240
ip ospf network point-to-point
!
interface Ethernet0/1
ip address 10.1.2.2 255.255.255.0
ip ospf network point-to-point
!
router ospf 1
router-id 3.3.3.3
network 0.0.0.0 255.255.255.255 area 0
!



=======================================

R4 Configuration
---------------------------------
!
interface Loopback0
ip address 10.1.5.70 255.255.255.248
ip ospf network point-to-point
!
interface Serial1/0
ip address 10.1.3.3 255.255.255.0
ip ospf network point-to-point
!
router ospf 1
router-id 4.4.4.4
network 0.0.0.0 255.255.255.255 area 0
!



=======================================

R5 Configuration
---------------------------------
!
interface Loopback0
ip address 10.1.5.75 255.255.255.224
ip ospf network point-to-point
!
interface Serial1/1
ip address 10.1.4.4 255.255.255.0
ip ospf network point-to-point
!
router ospf 1
router-id 5.5.5.5
network 0.0.0.0 255.255.255.255 area 0
!



=======================================

R1 Configuration
---------------------------------
!
interface Ethernet0/0
ip address 10.1.1.1 255.255.255.0
ip ospf network point-to-point
!
interface Ethernet0/1
ip address 10.1.2.1 255.255.255.0
ip ospf network point-to-point
!
interface Serial1/0
ip address 10.1.3.1 255.255.255.0
ip ospf network point-to-point
!
interface Serial1/1
ip address 10.1.4.1 255.255.255.0
ip ospf network point-to-point
!
router ospf 1
router-id 1.1.1.1
network 0.0.0.0 255.255.255.255 area 0
!




เรามาลอง Traceroute จาก R1 ไปยัง destination 10.1.5.75 กันว่ามันจะ forward IP packet ที่มี destination 10.1.5.75 ออกไปทาง next-hop ไหน?





จากภาพ จะเห็นได้ว่า ผลของการ Traceroute บน R1 คือ R1 forward IP packet ที่มี destination 10.1.5.75 ออกไปยัง next-hop 10.1.2.2 ซึ่งเป็นไปตามกฎของ longest match 

ท้ายสุดนี้ ฝากไว้ให้คิดกันเล่น คือ 
1. ค่า Administrative Distance หรือ AD จะถูกนำมาใช้ในการพิจารณาการ forwarding IP packet ที่มี destination 10.1.5.75  นี้หรือไม่ และเมื่อไหร่?
2. ค่า Metric จะถูกนำมาใช้ในการพิจารณาการ forwarding IP packet ที่มี destination 10.1.5.75  นี้หรือไม่ และเมื่อไหร่?

สิ่งเหล่านี้ผมขอฝากไว้ให้คิดกันเล่นๆ ก่อนนะครับ หากมีเวลา จะเอามาอธิบายเพิ่ม ถ้าไม่เพิ่มในบทความนี้ ก็อาจจะเขียนบทความใหม่ ที่ link บทความนี้อีกที แต่ตอนนี้ขอพักการเขียน ไปเคลียร์งานหลักก่อนนะครับ งานเยอะมาาาาาาก ^^

หวังเป็นอย่างยิ่งว่าบทความนี้จะทำให้ทานเข้าใจเรื่อง longest match กันมากขึ้นนะครับ

ขอบคณครับ
โก้-ชัยวัฒน์





Create Date : 15 กันยายน 2560
Last Update : 18 กันยายน 2560 10:26:20 น. 0 comments
Counter : 2717 Pageviews.  
 
Name
Opinion
*ใช้ code html ตกแต่งข้อความได้เฉพาะสมาชิก

kochaiwat
 
Location :
กรุงเทพฯ Thailand

[Profile ทั้งหมด]

ให้ทิปเจ้าของ Blog [?]
ฝากข้อความหลังไมค์
Rss Feed
Smember
ผู้ติดตามบล็อก : 693 คน [?]




เริ่มงานครั้งแรกที่บริษัท UIH (United Information Highway) ซึ่งเป็นบริษัทผู้ให้บริการทางด้านการสื่อสารข้อมูล อาทิเช่น Lease Line, Frame Relay และ MPLS และได้ย้ายไปร่วมงานกับบริษัท dtac โดยได้ทำงานเกี่ยวกับ IP Network (Switch/Router/Firewall/F5-Loadbalancer) รวมถึง MPLS Network และ IPRAN (IP Radio Access Network) ซึ่งเป็น IP Network ที่รองรับ Access ของ Mobile System นอกจากนั้นยังสนใจศึกษาเรื่อง IPv6 Address ที่จะมาใช้แทน IPv4 ที่เราใช้งานอยู่ในปัจจุบัน
แต่ด้วยความชอบในการแบ่งปันความรู้ จึงได้มีโอกาสสอน CCNA อยู่ที่สถาบันแห่งหนึ่งในอาคารฟอร์จูนทาวน์ในวันเสาร์-อาทิตย์ ตั้งแต่ปี พ.ศ. 2549 จนถึง พ.ศ. 2553 รวมเป็นเวลา 4 ปี, หลังจากนั้นในระหว่างที่ทำงานที่ dtac ก็ได้สอนเสาร์-อาทิตย์เรื่อยมา

เคยเป็น Trainer หรือ Instructor อย่างเต็มตัว สอนวิชาต่างๆ ของ Cisco อย่างเป็นทางการ (Authorize Training) ที่บริษัท Training Partner Thailand จนถึง มีนาคม 2014 และได้ตัดสินใจออกมาสอนเอง เพราะด้วยความรักในอาชีพการสอน และต้องการที่จะแบ่งปันความรู้ให้กับบุคคลในระดับกลางและล่างเพื่อส่งเสริมให้ได้มีโอกาสได้เรียน และได้มีโอกาสสมัครงาน แต่ด้วยใจรักในบริษัท Cisco ดังนั้น เมื่อมีโอกาสเข้ามา จึงได้ตัดสินใจหยุดการสอน และได้เข้าไปเป็นพนักงาน หรือทำงานที่บริษัท Cisco Thailand ตั้งแต่วันที่ 15 กุมภาพันธ์ 2559 (2016) จนถึงปัจจุบัน

ลูกค้าที่เคยมารับการอบรม เช่น
- Lao Telecom Company Ltd
- CAT Telecom
- TOT
- True
- dtac
- CDG Group
- SITA air transport communications and information technology (www.sita.aero/)
- Infonet Thailand
- MultiLink Co., Ltd
- โรงพยาบาลไทยนครินทร์
- และเคยไปเป็นวิทยากรพิเศษที่ มหาวิทยลัยกรุงเทพสุวรรณภูมิ

ปัจจุบัน โก้-ชัยวัฒน์ ได้ผ่านการสอบ:
- Cisco Certified Internetwork Expert (CCIE) No. 51353 และ
- Cisco Certified Systems Instructor (CCSI) ซึ่งเป็น Certificate ที่ออกให้โดย Cisco สำหรับผู้ที่จะเป็นผู้สอน Cisco Certificate อย่างเป็นทางการ และได้รับ CCSI ID: 34784

วิชาที่สามารถได้สอนได้สำหรับ Cisco Certificate ในขณะนี้คือ
- CCNA Routing & Switching
- CCNA Security (IINS)
- CCNP Route & Switch: ROUTE
- CCNP Route & Switch: SWITCH
- CCNP Route & Switch: TSHOOT
- MPLS (IOS)
- MPLS Traffic Engineering (IOS)
- CCNP Service Provider: SPROUTE (OSPF, IS-IS, BGP, Prefix-List, Route-Map and RPL (Routing Policy Language))
- CCNP Service Provider: SPADVROUTE (Advance BGP, Multicast, and IPv6)
- CCNP Service Provider: SPCORE (MPLS, MPLS-TE, QoS)
- CCNP Service Provider: SPEDGE (MPLS-L3VPN, MPLS-L2VPN (AToM and VPLS)
- IPv6

Certification ที่มีอยู่ในปัจจุบัน CCIE# 51353, CCSI# 34784, CCNA Routing & Switching, CCNA Security (IINS), CCNA Design, CCNP Routing & Switching, CCIP, CCNP Service Provider ซึ่งเป็น Certification ของ Cisco product รวมถึง Certification ของสถาบัน EC-Council (www.eccouncil.org) นั่นคือ Certified Ethical Hacker (CEH)

"เป้าหมายมีไว้ให้ไล่ล่า บ้างเหนื่อยล้าบ้างหยุดพัก
ชีวิตแม้ยากนัก แต่เรารักเราไม่ถอย
ชีวิตแม้ต้องคอย จะไม่ปล่อยไปวันๆ
ชิวิตไม่วายพลัน แม้นสักวันต้องได้ชัย"

"แม้ระยะทางจะไกลแค่ไหน แม้ต้องใช้เวลามากเพียงใด
ขอเพียงแค่มีความตั้งใจ เราต้องได้ไปให้ถึงมัน"

ผมจะไม่ยอมทิ้งฝัน แต่จะไล่ล่ามันให้ถึงที่สุด สักวันฝันอาจจะเป็นจริง ถึงจะไปไม่ถึง แต่ผมก็ภูมิใจที่ได้ทำ
==============================
ความรู้ = เมล็ดพืช
ความพยายามในการเรียนรู้ = ปุ๋ย, น้ำ และความใส่ใจที่จะปลูก
สรุปคือ
ยิ่งพยายามเรียนรู้ ยิ่งพยายามศึกษาในเรื่องใดๆ ผลที่ได้คือ จะได้ความรู้ในเรื่องนั้นๆ อย่างลึกซึ้ง เปรียบเสมือนปลูกต้นไม้ด้วยความใส่ใจ ให้น้ำ ให้ปุ๋ย ผลที่ได้ก็คือ ต้นไม้ที่เติบโตอย่างแข็งแรง และผลิดอกและผลที่งดงามให้เราได้ชื่นชม
ความพยายามอยู่ที่ไหน ความสำเร็จจะอยู่ที่นั่น หรือที่ไหนก็ช่าง แต่เชื่อเถอะ เราจะได้ผลลัพธ์ที่ดีจากความพยายามนั้นๆ ไม่มากก็น้อย
อยากได้อะไรให้พยายาม แล้วความสำเร็จมันจะเข้ามาหาเอง
ผมเชื่อ และมั่นใจอย่างนั้น
===============================
ตอนนี้ผมได้ไปถึงฝัน (CCIE) แล้ว และสิ่งที่ไม่คาดฝัน คือได้ทำงานที่บริษัท Cisco ซึ่งถือได้ว่าไกลเกินฝัน

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

ผมขอเป็นกำลังใจให้กับทุกคน และขอให้ประสบความสำเร็จดังที่มุ่งหวัง ไม่ว่าท่านจะหวังสิ่งใดก็ตามครับ

ท้ายที่สุด ผมขอฝากข้อคิดในเรื่อง Certificate ไว้สักนิดนะครับ:
*** "CCIE และ Certificate อื่นๆ มีไว้เพื่อทำมาหากิน และมีไว้เพื่อข่มตนไม่ให้เกรียน เพราะความเกรียนจะนำมาซึ่งการเป็นเป้าให้คนที่เค้าหมั่นไส้ยิงเอานะครับ" ***

Facebook: ชัยวัฒน์ อมรหิรัญวงศ์
New Comments
[Add kochaiwat's blog to your web]

MY VIP Friends


 
 
pantip.com pantipmarket.com pantown.com