Issuu on Google+

387 แนวการสอน ชื่อหนวยเรียน อินเตอรเน็ตเวิรค สัปดาหที่ 14 เรื่อง 6.6 Routing Protocol 6.7 IP Addressing จุดประสงคการสอน 6.6 เขาใจหลักการทํางานของ Routing Protocol 6.6.4 อธิบายหลักการทํางานของ Border Gateway Protocol (BGP) 6.7 เขาใจหลักการทํางานของ IP Addressing 6.7.1 อธิบายรูปแบบของไอพีแอดเดรส 6.7.2 อธิบายการจัดคลาสเครือขาย 6.7.3 อธิบายการทํา Variable Length Subnet Mask 6.7.4 อธิบายการทํา Classless Inter-Domain Routing

บทเรียนที่ 6.6, 6.7 เวลาสอน 3 คาบ


388 6.6.4 Border Gateway Protocol (BGP) BGP (Border Gateway Protocol) เปนโปรโตคอลเลือกเสนทางประเภท Exterior Gateway Routing ที่ใชเพื่อการเชื่อมตอเราเตอร (Router) และเครือขายทีอ่ ยูตางโดเมน (Domain) กันบน อินเทอรเน็ต BGP ใช Protocol TCP Port หมายเลข 179 เพื่อใชในการขนถายขอมูลขาวสาร โดยมีการใช TCP เพื่อการสถาปนาการเชื่อมตอกอนจะแลกเปลีย่ นขอมูลขาวสารระหวางเราเตอร BGP ทั้งสอง (Peer Router) จากนั้นก็จะทําการแลกเปลี่ยนขอมูลขาวสาร รวมทั้งการเปดสัมพันธไมตรีกอนที่จะ แลกเปลี่ยนขาวสารระหวางกันตอไป ขอมูลขาวสารที่เราเตอรทั้งสองใชเพื่อการแลกเปลี่ยนกัน รวมไปถึงขาวสารที่แสดงถึงความ สามารถในการเขาถึงกันได โดยขาวสารนี้เปนในรูปแบบของเลขหมาย AS ของแตละฝาย ซึ่งตางฝาย ถือเปนเสนทางในการเขาหากัน ขอมูลนี้จะชวยใหเราเตอรสามารถสรางผังของเสนทางที่ปราศจากลูป (Loop) ในการเขาหากัน อีกทั้งเราเตอรยังใชเพื่อเปนการกําหนดเสนทางเชิงนโยบายที่มเี นือ้ หาที่ กําหนดขอจํากัดตางๆ จุดประสงคของการใช BGP • BGP ใหประโยชนอยางเห็นไดชัด โดยเฉพาะการเชื่อมตอเครือขายตางๆ รวมทั้งลูกคา และผูใหบริการโทรศัพท รวมทั้งเครือขายอื่นๆ • BGP เหมาะอยางยิ่งสําหรับการเชื่อมตอเครือขายในรูปแบบของ Autonomous ตางๆ เขา ดวยกัน • BGP เหมาะอยางยิ่งสําหรับการเชื่อมตอเครือขายในระดับ Enterprise หากองคกรของ ทานมีการเชื่อมตอกับอินเทอรเน็ตแบบหลายเชื่อมตอเพือ่ ผลแหง Redundancy BGP ก็ สามารถทํา Load Balancing Traffic ไดบนเสนทางที่เปน Redundant Link • จัดเลือกเสนทางผานทางเครือขายไปยัง Autonomous System อื่นๆ ที่เชื่อมตอกัน • มีการเชื่อมตอระหวาง Autonomous System มากกวา 1 เสน • ควบคุมการลําเลียงขอมูลขาวสารที่วิ่งไปมาระหวางระบบ Autonomous System • ทานยังสามารถใช Policy ที่กําหนดใหทานสามารถเลือกเสนทางที่ดีที่สุดเพื่อเดินทาง ไปสูปลายทาง เมื่อใดที่ยังไมควรใช BGP • เมื่อใดก็ตามทีท ่ านมีการเชื่อมตอระหวาง Autonomous ที่แตกตางกัน แตมีเสนทางการ เชื่อมตอเพียงหนึ่งเดียว ลักษณะแบบนี้ทา นควรใช Static Route และทําการ Redistribute Static Route นี้ผานไปที่ Autonomous System โดยการใช IGP Protocol แทน


389 หากทานไมใช BGP ทานจะสามารถลดขนาดของ Routing Table ลงได รวมทั้ง RAM ที่ จะตองนํามาติดตั้งใชงานบนเราเตอรสําหรับ BGP ได เนือ่ งจากการใช BGP Router ทาน จะตองใช RAM ขนาด 128 เมกะไบต รวมทั้งซีพียูที่มคี วามเร็วสูงเพียงพอ เพื่อรองรับ BGP Routing Table ที่มีขนาดใหญ เชน 120,000 Route สรุปเหตุผลที่ไมควรใช BGP • เมื่อใดที่มีการเชื่อมตอกันระหวาง Autonomous ที่ตางกันดวยการเชื่อมตอเพียงเสนเดียว • เมื่อทานยังไมมีเราเตอรที่มีประสิทธิภาพมากเพียงพอทีจ ่ ะรองรับการทํางานของ BGP • เมื่อทานยังไมมีแบนดวิดธ (Bandwidth) ที่สูงมากเพียงพอเพื่อที่จะเชื่อมตอระหวาง Autonomous System หมายเหตุ เราเตอรที่ทํางานบน BGP จะตองสามารถรองรับขอมูลขาวสารเกี่ยวกับเสนทางไม นอยกวา 200,000-300,000 เสนทาง ดังนั้นจึงใชหนวยความจําคอนขางมาก ความหมายของคําวา Peer หรือ Neighbor เราเตอรที่จับคูเชื่อมตอกับเราเตอรตัวอื่นๆ และมีการใช Protocol TCP เพื่อเชื่อมตอสื่อสารกัน รวมทั้งแลกเปลี่ยนขาวสารเกี่ยวกับเสนทางระหวางกัน เราเรียกวา Peer หรือเพื่อนบาน (Neighbor) การแลกเปลี่ยนขอมูลขาวสารระหวาง Peer เราเตอรที่เปน Peer หรือจับคูกันจะมีการแลกเปลี่ยนขอมูลขาวสารเกี่ยวกับตารางเลือกเสน ทางอยางเต็มที่ และมีการอัปเดตขาวสารอีกครั้งก็ตอเมื่อมีการเปลี่ยนแปลงเกิดขึ้น (หมายความวา ตารางเลือกเสนทางก็เปลี่ยนไปดวยเชนกัน) BGP จะทําใหเราเตอรเก็บรักษา Version Number ของ ตารางไว และคานี้จะตองเหมือนกับเราเตอรตางๆ ที่จับคูอยูกับมัน และคาที่เปน Version Number นี้มี การเปลี่ยนแปลง เมื่อใดทีม่ ีการเปลี่ยนแปลงในเนื้อหาของตารางเลือกเสนทาง นอกจากนี้มกี ารสง ขาวสารที่เรียกวา Keepalives ออกมาเปนระยะๆ เพื่อตรวจสอบความมีตัวตนระหวางกัน และมีการสง ขาวสารที่เปนลักษณะแจงเตือนในกรณีที่ตรวจพบความผิดพลาดเกิดขึ้น การติดตอกันระหวางเราเตอรเพื่อนบาน กอนที่เราเตอรที่เชื่อมตอกันโดยตรงจะสามารถแลกเปลี่ยนขอมูลขาวสารใหแกกัน โดยเฉพาะ ขอมูลเกี่ยวกับเครือขาย ตัวเราเตอรจะตองดําเนินการขั้นตอนตอไปนี้ • เราเตอรจะตองใช TCP เพื่อสถาปนาการเชื่อมตอระหวางกัน โดยการใช Open Message • เราเตอรอีกฝงหนึ่งจะตองตอบรับการขอสถาปนาการเชื่อมตอ • หลังจากที่เราเตอรตนทางไดรับการตอบรับแลว มันจะสงคํายืนยันกลับไปที่เราเตอรอีก ฝงหนึ่ง • การแลกเปลี่ยนขอมูลเกี่ยวกับเครือขายหรือเสนทางจะเริม ่ ขึ้น •


390 ชนิดของขาวสารที่ใชใน BGP ชนิดของขาวสารที่ใชใน BGP มีอยู 4 แบบดังนี้ • Open Message - ใชเพื่อการสถาปนาจัดตั้งการเชื่อมตอระหวาง Router BGP • Keepalives - เปนขาวสารทีใ่ ชทักทายเราเตอรเพื่อนบาน โดยการสงออกมาเปนหวงเวลา ที่แนนอนเพื่อการ Verify เสนทาง หากคานี้ถูกตั้งเปน "0" หมายถึง Infinity ซึ่ง หมายความวาจะไมมกี ารสง Keep Alive Message เกิดขึน้ • Update Message - ประกอบดวยขอมูลเกีย ่ วกับเสนทาง รวมทั้ง Path Attribute ภายใน Update Message นี้ครอบคลุมไปถึง Route ที่ถูกถอดออกจาก Routing Table หรือไมมี ตัวตนแลว การ Update 1 Path ตอ 1 Update หากมีหลายๆ Path ก็ตองมีหลาย Update • Notification - ใชเพื่อการแจงเตือนความผิดพลาดที่เกิดขึน ้ EBGP กับ IBGP หากเราเตอรใน Autonomous หนึ่งๆ มีการเชื่อมตอกับ Autonomous อื่นๆ อีกหลายๆ Autonomous ตัวเราเตอรใน Autonomous นั้นๆ (หรือ AS นั้นๆ) จะทําหนาที่เปนทางผานของ Autonomous อื่นๆ ได เชน AS200 เปนทางผานของ AS100 กับ AS300 เราเตอรที่เชื่อมตอกับเราเตอรอีกตัวหนึ่งทีอ่ ยูภายใต AS ที่มีเลขหมายตางกัน เราเรียกวา EBGP (External BGP) และเราเตอรที่เชือ่ มตอกันโดยตรง และอยูภ ายใตเลขหมาย AS เดียวกัน เรา เรียกวา IBGP (Internal BGP)

รูปที่ 6.63 ลักษณะ EBGP กับ IBGP


391

รูปที่ 6.64 การทํางาน IBGP การทํา Synchronization ระหวางเราเตอรที่ใช BGP กอนที่ BGP จะสามารถประกาศเสนทางแกกนั ภายในตัวเราเตอรของ BGP เองจะตองมี ขอมูลเกี่ยวกับเสนทางในตาราง Routing เสียกอน หรือพูดงายๆ ก็คือโปรโตคอล BGP และ IGP (ใน ที่นี้คือโปรโตคอลเลือกเสนทางที่ไมใช BGP) จะตองผสานการทํางานรวมกันกอนทีจ่ ะประกาศ เครือขายหรือเสนทางออกไป Cisco มีคําสั่งที่เรียกวา No synchronization เพื่อขจัดการทํางานในลักษณะนี้ การใชคําสั่ง No synchronization จะชวยให Router BGP สามารถประกาศเสนทางที่มันเรียนรูไดดว ยตนเอง แตไมใช ไปดึงออกมาจากตาราง Routing

รูปที่ 6.65 การทํา Synchronization ระหวาง Router BGP


392 จากตัวอยางในรูปที่ 6.65 จะเห็นวา Router A และ Router B เปนเราเตอรที่ทํางานบน BGP หากมีการยกเลิกการทํา Synchronization บน Router B มันจะประกาศเครือขาย 1.0.0.0/8 ไปที่ AS200 และเมื่อใดก็ตามที่ Router D ตองการจะสงขอมูลขาวสารไปที่เครือขาย 1.0.0.0 มันจะสงแพ็กเก็ต (Packet) ออกไปที่ Router B ซึ่งจะเมินเฉยตอตารางเสนทาง แตจะสงแพ็กเก็ตตอไปให Router C แต เนื่องจาก Router C ไมไดตดิ ตั้ง BGP ดังนั้นในตารางเสนทางของ Router C จึงไมมีเครือขาย 1.0.0.0 จึงทําการละทิง้ แพ็กเก็ตไป และนี่คือเหตุผลที่การคงไวซึ่ง Synchronization ระหวาง BGP กับ โปรโตคอลเลือกเสนทางที่ไมใช BGP (IGP) จึงมีความสําคัญ ดังนั้นการกําหนดวาจะใชหรือไมใช BGP จึงเปนเรือ่ งสําคัญที่ตองพิจารณา ชนิดของ Autonomous โดยหลักการแลว Autonomous System Number (ASN) เปนเลขหมายในทางตรรกะทีก่ ําหนด ใหกับเราเตอรทุกตัวที่ทํางานอยูภายใตระบบการจัดการเดียวกัน โดยเราเตอรเหลานี้จะมีการแบงปน (Share) ขาวสารเกี่ยวกับตารางเลือกเสนทาง และมีการอัปเดตภายใตสภาวการณปกติ โดยเฉพาะเมื่อมี การเปลี่ยนแปลงใดๆ เกิดขึ้น มาตรฐานการกําหนดเลขหมาย AS อยูภายใตการดําเนินงานของ Internet Assigned Numbers Authority (IANA) ที่เปนผูกาํ หนดเลขหมาย AS บนอินเทอรเน็ต โดยเลขหมาย AS นี้สามารถมีได ตั้งแตเลข 1 - 65,535 โดยมีเลข 64,512 ไปจนถึง 65,535 ที่ถูกสํารองไวใหกับเครือขายสวนตัวที่ไมได ทํางานบนอินเทอรเน็ต เชนเดียวกับ IP Address ที่ไมไดถูกนํามาใชงานบนอินเทอรเน็ตนั่นเอง Stub กับ Transit Autonomous System มีระบบ Autonomous อยู 2 แบบในปจจุบันที่ทานจะตองนํามาพิจารณากอนทีจ่ ะเลือกใชงาน BGP ไดแก Stub AS ที่มีเพียงเสนทางเดียวที่เชื่อมตอกับเครือขายภายในกับโลกภายนอก ดังรูปที่ 6.66

รูปที่ 6.66 ลักษณะ Autonomous System แบบ Stub การใชงานแบบ Stub AS นี้ใชในกรณีทภี่ ายใน AS เดียวกัน มีทั้งเราเตอรที่ทํางานภายใต IGP (เชน RIP, IGRP หรือ EIGRP) แตตองการจะประกาศเสนทางออกไปขางนอก (ซึ่งทําไมได ดังนั้น จะตองประกาศมาที่ Router BGP จากนั้นให Router BGP ที่ดูแล AS ที่ตนสังกัดอยูเปนผูที่ประกาศ เสนทางแก Router BGP อันเปนเพื่อนบานที่อยูตาง AS แทน


393 สวน Transit AS เปนระบบ Autonomous ที่ขอมูลขาวสารจะตองวิ่งผาน AS หนึ่งไปยังอีก AS หนึ่ง เชน AS 30 เปนทางผานของ AS 10 เพื่อเดินทางไปสู AS 50 เปนตน ดังรูปที่ 6.67

รูปที่ 6.67 ลักษณะการทํางานของ Transit AS สวน Non-Transit AS หมายถึงการสื่อสารกันระหวางเราเตอรที่อยูตาง AS กันโดยปกติ โดยที่ ไมมีเราเตอรใน AS ใด AS หนึ่งอนุญาตใหเปนทางผานระหวาง AS โดยเด็ดขาด ดังรูปที่ 6.68

รูปที่ 6.68 ลักษณะการทํางานของ Non-Transit AS BGP Attribute ปกติโปรโตคอลเลือกเสนทางทั่วไปจะใชวิธีการเลือกเสนทางที่ดีที่สุดตางกัน เชน RIP จะใช จํานวน Hop เปนหลัก ขณะที่ IGRP ใชแบนดวดิ ธเปนหลัก สวน EIGRP ใชการผสมผสานกันระหวาง แบนดวิดธและดีเลย (Delay) เปนแนวทางในการเลือกเสนทาง นอกจากนี้ OSPF ใชคา Cost เปนหลัก แต BGP ใชแอตทริบิวต (Attribute) เปนหลักในการเลือกเสนทางที่ดีที่สุด การใชแอตทริบิวตของ BGP ไมเพียงแตตองการรับขอมูลขาวสารเกี่ยวกับเสนทางเทานั้น แตใชเพื่อพิสูจนเสนทางที่ดีที่สุดที่ จะเดินทางไปสูปลายทาง และ BGP ยังประกอบดวยแอตทริบิวตตางๆ ดังตอไปนี้ • Weight Attribute • Local Preference Attribute • Multi-exit Discriminator หรือ Metric Attribute


394 Origin Attribute • AS_Path Attribute • Next Hop Attribute • Community Attribute Weight Attribute Weight เปนมาตรฐานของ Cisco ที่เราเตอรใชเปนการภายใน คา Weight Attribute นี้จะไมมี การประกาศออกไปที่เราเตอรเพื่อนบาน หากเราเตอรไดเรียนรูแ ละพบวามีเสนทางมากกวาหนึ่งทีจ่ ะ เดินทางไปสูปลายทาง ดังนัน้ เสนทางที่มคี า Weight สูงสุดจะไดรบั การพิจารณาวาเปนเสนทางที่ดี ที่สุด •

รูปที่ 6.69 ลักษณะใชงาน BGP Weight Attribute Local Preference Attribute เปนแอตทริบวิ ตที่จะบงบอกแก AS เกีย่ วกับเสนทางที่ตอ งการใชเปนทางออกไปจาก AS เพื่อ เดินทางไปสูเครือขายปลายทาง เสนทางใดมีคา Local Preference ที่สูงกวาจะไดรบั เลือก คาดีฟอลต (Default) ของ Local Preference ไดแก 100

รูปที่ 6.70 แสดงใหเห็นการทํางานของ Local Preference Attribute


395 Multi-exit Discriminator Attribute บางครั้งถูกเรียกวา Multi-exit Discriminator (MED, BGP-4) หรือ Inter-AS (BGP3) เปนแอ ตทริบิวตที่ชี้นาํ สูเพื่อนบานที่อยูภายนอก AS เกี่ยวกับเสนทางที่เหมาะสมที่จะเขามาใน AS แหงนี้ โดย ในกรณีนี้ AS จะมีหลายเสนทางที่จะเขามาภายใน ซึ่ง Metric Attribute จะชี้แนะแก AS อื่นไดทราบถึง เสนทางที่ดีทสี่ ุดที่จะเขามาภายใน AS นี้ (คา Metric ยิ่งนอยยิ่งเปนที่ตอ งการ) AS ตางกันจะมีการแลกเปลีย่ น Metric กัน คา Metric จะถูกนําเขามาใน AS แตจะไมถูก สงออกไป เมือ่ ใดที่คา Metric ถูกนําเขามาใน AS ก็จะนําคานี้ไปทําการตัดสินใจเลือกเสนทางตอไป คาดีฟอลตของ Metric คือ 0 หากไมกําหนดคาใดๆ ตัวเราเตอรจะทําการเปรียบเทียบคา Metric ของเสนทางจากเพื่อนบาน ที่อยูใน AS เดียวกัน และเพื่อใหเราเตอรสามารถเปรียบเทียบคา Metric จากเพือ่ นบานที่อยูตา ง AS กัน ทานจะตอง ใชคําสั่ง "bgp always-compare-med" ที่เราเตอร จากรูปที่ 6.71 จะเห็นวา AS100 ไดรับขาวสารเกี่ยวกับเครือขาย 180.10.0.0 ผานทางเราเตอร 3 ตัว ไดแก RTC, RTD และ RTB โดย RTC และ RTD อยูใน AS300 และ RTB อยูใน AS400 สมมติวาเราตั้งคา Metric ที่มาจาก RTC ที่ 120 คา Metric ที่มาจาก RTD ไดแก 200 และ RTB ที่ 50 ในทีน่ ี้ RTA จะเลือก RTC เนื่องจาก 120 นอยกวา 200 แตเมื่อ RTA ไดรับคา Metric จาก RTB ตัว RTA จะไมสามารถนําคามาเปรียบเทียบได เนื่องจากอยูคนละ AS ดังนั้นทานจะตองใชคําสั่งพิเศษ "bgp always-compare-med" ที่ RTA

รูปที่ 6.71 ลักษณะการทํางานของ Multi-exit Discriminator Attribute


396 Origin Attribute

รูปที่ 6.72 ลักษณะการทํางานของ Origin Attribute Origin Attribute เปนแอตทริบิวตที่เปนของดั้งเดิมของ BGP โดยเปนแอตทริบิวตทแี่ สดงถึง ขาวสารที่เกี่ยวกับจุดเริ่มตนของเสนทาง ประกอบดวยคา 3 ประการดังนี้ 1. IGP : ขาวสารเกี่ยวกับเสนทางที่จะเขาถึงเครือขาย โดยการใชคําสั่ง Network หรือเมื่อ IGP มีการทํา Redistribute ไปที่ BGP โดยคานีจ้ ะแสดงเปนตัวอักษร "I" ในตาราง BGP 2. EGP : ขาวสารเกี่ยวกับเสนทางที่จะเขาถึงเครือขายที่ไดรับการเรียนรูโดย EGP ซึ่งจะบง บอกเปนตัวอักษร "e" ในตาราง BGP 3. Incomplete : ขาวสารเกี่ยวกับเสนทางสูเครือขายที่ไดรับการเรียนรูโดยเหตุผลอื่นๆ เชน การทํา Redistribute Static Route เขาไปที่ BGP และขอมูลเสนทางเกี่ยวกับตนทางไมสมบูรณ โดยจะ ปรากฏตัวอักษร "?" ใน BGP Table จากรูปที่ 6.72 จะเห็นวา RTA สามารถเขาถึง 170.10.0.0 โดยผาน ทาง 300 I ซึ่งหมายความวา AS Path ตอไปไดแก 300 และจุดเริ่มตนของเสนทางไดแก IGP RTA ยังสามารถเขาถึง 190.10.50.0 โดยผานทาง I ซึ่งหมายความวาขาวสารอยูใ น AS เดียวกัน และมีจุดเริ่มตนคือ IGP RTE สามารถเขาถึง 150.10.0.0 ผานทาง 100 I (AS ตอไปคือ 100 และมีจุดเริ่มตนคือ IGP) RTE ยังสามารถเขาถึง 190.10.0.0 ผานทาง 100 ? (AS ตอไปคือ 100 และจุดเริ่มตนไดแก Incomplete "?" โดยมาจาก Static Route) AS Path Attribute เมื่อใดก็ตามทีม่ ีขอมูลเกี่ยวกับเสนทางที่ผานการ Update วิ่งผาน AS ใด จะมีการเติมเลขหมาย AS เขาไปใน Update นั้นดวย เชน Routing Update วิ่งผาน AS100, AS200 และ AS300 ก็จะมีการ บันทึกเลขหมาย AS ลงไปไวใน Update นี้เสมอ กลาวไดวา AS Path Attribute เปนรายชือ่ ของ AS ที่ Route Update ไดวงิ่ ผานและบันทึกไว เพื่อใหทราบวามาจากที่ใด เพื่อที่จะเดินทางสูจุดหมายปลายทาง


397 จากตัวอยางจะเห็นวา Network 190.10.0.0 ไดรับการประกาศโดย RTB ใน AS200 เมื่อขอมูล เกี่ยวกับเครือขายนีว้ ิ่งผาน AS300 ตัว Router RTC จะทําการเติมเลขหมาย AS300 ของมันลงไปใน ขาวสารนี้ ดังนั้นเมื่อ 190.10.0.0 เดินทางไปถึง Router RTA จะปรากฏเลขหมาย AS ถึง 2 เลขหมาย ปรากฏอยูในขาวสารนี้ อันแรกคือ 200 ตอมาเปน 300 ทําให Router RTA ทราบวาเครือขาย 190.10.0.0 มาจากที่ใด ตองวิง่ ผาน AS ใดมา เชนเดียวกับ 170.10.0.0

รูปที่ 6.73 การทํางานของ AS_Path Attribute Next Hop Attribute เปน IP Address ของ Hop ตอไปที่จะใชเพื่อเดินทางไปสูเครือข���ยปลายทาง สําหรับ EBGP แลว Next Hop จะหมายถึง IP Address ของเพื่อนบานทีก่ ําหนดขึ้นโดยคําสั่ง Neighbor จากรูปที่ 6.73 จะเห็นวา RTC จะประกาศเครือขาย 170.10.0.0 ไปที่ RTA ดวย IP Address ที่ เปน Next Hop ไดแก 170.10.20.2 และ RTA จะประกาศ 150.10.0.0 ไปที่ RTC ดวยแอดเดรส (Address) ของ Hop ตอไปคือ 170.10.20.1 กฎกติกาของ IBGP กําหนดไววา Hop ตอไปที่ประกาศโดย EBGP จะตองถูกนําเขาไปใน IBGP เนื่องดวยกฎกติกานี้เอง RTA จะประกาศ 170.10.0.0 ไปที่เราเตอรที่เชื่อมตอกันภายใน IBGP ไดแก RTB ดวยแอดเดรสของ Hop ตอไปคือ 170.10.20.2 ดังนั้นในมุมมองของ RTB แลว Next Hop ที่จะไปสู 170.10.0.0 คือ 170.10.20.2 ไมใช 150.10.30.1 สรุป RTC จะประกาศ 170.10.0.0 ไปที่ RTA ดวย Next Hop คือ 170.10.20.2 RTA จะประกาศ 170.10.0.0 ไปที่ RTB ดวย Next Hop คือ 170.10.20.2 (External Next Hop ผาน EBGP จะถูกสงเขาไปใน IBGP)


398

รูปที่ 6.74 ลักษณะการทํางานของ Next Hop Attribute Community Attribute Community Attribute เปนวิถีทางที่จะรวมกลุมเสนทางที่เปนปลายทางเขาดวยกันเปนกลุม เราเรียกวา Community มีการใช Route Map เพื่อจัดตั้ง Community Attribute ปกติคา Community Attribute ที่มีมาแตเดิมไดแก • No Export ไมมีการประกาศเสนทางนี้ไปสู Router BGP ที่อยูตาง AS กัน • No Advertise ไมมีการประกาศเสนทางนี้สูเราเตอรที่เชื่อมตอกันใดๆ • Internet ใหประกาศเสนทางนี้ไปสู Internet Community สูเราเตอรทุกตัวทีอ ่ ยูบน เครือขายของอินเทอรเน็ต จากรูปที่ 6.75 จะเห็นวา AS1 ประกาศ 172.16.1.0 ไปที่ AS2 ดวย Community Attribute noexport สวน AS2 จะแพรขา วสารเกี่ยวกับเสนทางไปทั่วทั้ง AS2 แตจะไมสงออกมาที่ AS3 หรือ AS ใดๆ ที่อยูภ ายนอก

รูปที่ 6.75 การทํางานของ Community Attribute no-export


399 สวนรูปที่ 6.76 แสดง AS1 ประกาศเสนทาง 172.16.1.0 ไปที่ AS2 ดวย Community Attribute no-advertise และ Router B ใน AS2 จะไมมีการประกาศเสนทางนี้ไปทีใ่ ดๆ อีก

รูปที่ 6.76 การทํางานของ Community no-advertise Attribute รูปที่ 6.77 แสดงการทํางานของ Internet Community Attribute ลักษณะการทํางานนี้ไมมี ขอจํากัดเกี่ยวกับขอบขายการทํางานของการประกาศเสนทางจาก AS1

รูปที่ 6.77 ลักษณะการทํางานของ Internet Community Attribute การเลือกเสนทางของ BGP BGP สามารถรับการประกาศเสนทางหลายๆ ชุดจากเสนทางเดียวกัน โดยเสนทางหลายๆ ชุด นี้มาจากแหลงตางๆ กันหลายแหงได แต BGP จะเลือกเสนทางใดเสนทางหนึ่งที่เห็นวาดีที่สุด เมื่อ เสนทางที่ดีทสี่ ุดถูกเลือกแลว BGP จะนําเสนทางที่ดที ี่สุดที่เลือกแลวนี้ไปไวในตาราง IP Routing Table จากนัน้ ก็จะเผยแพรเสนทางนี้ไปสูเราเตอรเพื่อนบาน BGP ใชตัวเลือกตอไปนี้เพื่อการเลือก เสนทางไปสูปลายทาง • หากเสนทางระบุปลายทางทีไ ่ มสามารถเขาถึงได จะมีการยกเลิกการ Update • BGP สนใจแตเสนทางที่มีคา Weight มากที่สุด • หากเสนทางใดมีคา Weight เทากัน ก็จะเลือกเสนทางใดที่มีคา Local Preference มาก ที่สุด


400 หากคา Local Preference มีคาเทากัน จะเลือกเสนทางที่มีจุดเริ่มตนที่ BGP ของเราเตอร ตัวปจจุบนั • หากไมมีทใี่ ดที่เปนตนทางของเสนทาง จะเลือกเสนทางที่มีคา AS_Path ที่สั้นที่สุด • หากทุกเสนทางตางก็มีคา AS_Path ที่เทากันทั้งหมด ใหเลือกเสนทางที่มีคา Origin นอย ที่สุด (IGP มีคานอยกวา EGP และ EGP มีคานอยกวา Incomplete) • หากคา Origin เทากัน ใหเลือกเสนทางที่มีคา MED ต่ําที่สุด • หากเสนทางนัน ้ มีคา MED เทากัน ใหเลือกเสนทางภายนอกที่เหนือกวาเสนทางภายใน • หากเสนทางทัง้ สองมีคาเทากัน ใหเลือกเสนทางผานมายัง IGP ที่ใกลทส ี่ ุด • เลือกเสนทางที่มีคา IP Address ต่ําที่สุดดังที่กําหนดไวใน Router ID ของ BGP Router •

รูปที่ 6.78 การใชงานของ MED Attribute 6.7 IP Addressing 6.7.1 รูปแบบของไอพีแอดเดรส รูปแบบของไอพีแอดเดรส มีขนาด 32 บิต ประกอบดวยเลข 2 สวน • เลขเครือขาย (network number) • เลขโฮสต (host number)

รูปที่ 6.79 แสดงรูปแบบของไอพีแอดเดรส


401

รูปแบบการเขียน “dotted decimal” แบงเปน 4 ไบต 192.168.1.230

คั่นแตละไบตดวยจุด (dot) เชน

รูปที่ 6.80 แสดงรูปแบบของไอพีแอดเดรสที่เขียนเปน “dotted decimal” ความสําคัญของเลขเครือขายและโฮสต • เราเตอร (Router) ใชไอพีแอดเดรสเปนเลขเครือขายเลือกเสนทางสง packet • โฮสตที่มี netid ชุดเดียวกัน จะอยูเ ครือขายเดียวกันสามารถสื่อสารกันไดโดยใชเฟรม datalink ไมตองใชเราเตอร • โฮสตที่มี netid ตางกัน จะอยูตางเครือขาย ตองใชเราเตอรสง packet ขามเครือขาย โดยการ เชื่อมโยงเครือขายดวยใช router

รูปที่ 6.81 แสดงการใช IP ในเครือขาย


402

6.7.2 การจัดคลาสเครือขาย

รูปที่ 6.82 แสดงการจัดคลาสเครือขาย


403 การหาจํานวน netid และ hosted ใชสูตร 2n เมื่อ n = จํานวนบิต network ที่สงวนไวไดแก network ที่มีบิตเปน “0” และ “1” ทั้งหมด และ host ที่สงวนไวไดแก host ที่มีบิตเปน “0” และ “1” ทั้งหมด

รูปที่ 6.83 แสดงการหาจํานวน netid และ hosted Class A จํานวน network = 7 บิต ดังนั้นมีจํานวนเครือขายทั้งหมด = 27 = 128 เครือขาย และมีจาํ นวน เครือขายที่ใชงานได = 27-2 = 128 – 2 = 126 เครือขาย จํานวนโฮสตในแตละเครือขาย= 24 บิต ดังนั้นมีจํานวนโฮสตทั้งหมด = 224 = 16,777,216 โฮสต และมีจาํ นวนโฮสตทใี่ ชงานได = 224-2 = 16,777,216 – 2 = 16,777,214 โฮสต

รูปที่ 6.84 แสดงรูปแบบ IP Class A


404 Class B

จํานวน network = 14 บิต ดังนั้นมีจํานวนเครือขายทั้งหมด = 214 = 16,384 เครือขาย และมี จํานวนเครือขายที่ใชงานได = 214-2 = 16,384 – 2 = 16,382 เครือขาย จํานวนโฮสตในแตละเครือขาย= 16 บิต ดังนั้นมีจํานวนโฮสตทั้งหมด = 216 = 65,536 โฮสต และมีจํานวนโฮสตที่ใชงานได = 224-2 = 65,536 – 2 = 65,534 โฮสต

รูปที่ 6.85 แสดงรูปแบบ IP Class B Class C

จํานวน network = 21 บิต ดังนั้นมีจํานวนเครือขายทั้งหมด = 221 = 2,097,152 เครือขาย และมี จํานวนเครือขายที่ใชงานได = 221-2 = 2,097,152 – 2 = 2,097,150 เครือขาย จํานวนโฮสตในแตละเครือขาย= 8 บิต ดังนั้นมีจํานวนโฮสตทั้งหมด = 28 = 256 โฮสต และมี จํานวนโฮสตที่ใชงานได = 28-2 = 256 – 2 = 254 โฮสต

รูปที่ 6.86 แสดงรูปแบบ IP Class C Default subnet mask ตารางที่ 6.9 แสดง Default subnet mask


405 ประเภทของ Subnet Mask • Fixed Length Subnet Mask ใชคา subnet mask เดียวกันตลอดทั้งเครือขาย แตละ subnet จะ มีจํานวนโฮสตเทาๆ กัน • Variable Length Subnet Mask ใชคา subnet mask ตางกันในแตเครือขาย แตละ subnet จะ มีจํานวนโฮสตไมเทากัน การแบงเครือขายยอย (subnet mask) • เปนเลขขนาด 32 บิต • บิตที่ตรงเลขเครือขาย (netid) มีคาเทากับ “1” • บิตที่ตรงเลขโฮสต (hostid) มีคาเทากับ “0

รูปที่ 6.87 แสดงรูปแบบการแบง subnet mask การเลือกเสนทางใน subnet mask สามารถทําไดโดยการตรวจสอบวาเปน IP ที่อยูในเครือขายเดียวกันหรือไม โดยใชเทคนิคการ “AND” บิต ระหวาง IP กับ subnet mask ถา subnet address มีคาเทากัน แสดงวาอยูใ นเครือขายเดียวกัน สามารถสง packet โดยใช Ethernet address ถา subnet address มีคาตางกัน แสดงวาอยูตางเครือขาย ตองสง packet ไปให router เพื่อสงขอมูลตอไป ตัวอยางการหา subnet IP ตนทาง 158.108.33.2 subnet mask 255.255.255.0 IP ปลายทาง 158.108.33.60 subnet mask 255.255.255.0

รูปที่ 6.88 แสดงการคํานวณหา subnet mask


406 Subnet Class B ตารางที่ 6.10 Subnet Class B

Subnet Class C ตารางที่ 6.11 Subnet Class B


407 IP address ที่สงวนไว • Network address ไดแกแอดเดรสที่มีเลขโฮสตเปน “0” ทั้งหมด เชน 158.108.0.0/16 -> 158.108.0.0 • Broadcast address ไดแกแอดเดรสที่มีเลขโฮสตเปน “1” ทั้งหมด ƒ Net direct broadcast เชน 158.108.0.0/16 -> 158.108.255.255 ƒ Subnet direct broadcast เชน 158.108.0.0/24 -> 158.108.1.255 ƒ Limited broadcast เชน 158.108.0.0/16 -> 255.255.255.255 • All-0s-subnet / All-1s-subnet หลังแบง subnet ไดแก Subnet ที่มีคา “0” ทุกบิตและ Subnet ที่มีคา “1” ทุกบิต • Host address 0.0.0.0 (this host on this net) ไมอนุญาตใหเปนแอดเดรสปลายทาง ใชเปน default route • Loopback address ไดแก 127.X.X.X โดยทั่วไปนิยมใช 127.0.0.1 Private IP Address • Class A IP 10.0.0.0 – 10.255.255.255 จํานวน 1 ชุด class A • Class B IP 172.16.0.0 – 172.31.255.255 จํานวน 16 ชุด class B • Class C IP 192.168.0.0 – 192.168.255.255 จํานวน 256 ชุด class C ขั้นตอนการทํา subnet • ขั้นตอนที่ 1 : กําหนดคา subnet mask • ขั้นตอนที่ 2 : หาเลขเครือขายประจําแตละ subnet • ขั้นตอนที่ 3 : หาเลขโฮสตประจําแตละ subnet • ขั้นตอนที่ 4 : หา broadcast address 6.7.3 Variable Length Subnet Mask เครือขายคลาส B 158.108.0.0 มี prefix 16 บิต หรือ 158.108.0.0/16 Network 158.108.0.0 Default subnet mask 255.255.0.0 ตองการใชเครือขายทีม่ ีจํานวนโฮสต ดังนี้ • 255.255.255.0 สําหรับ Subnet ที่มีโฮสตจํานวน 254 โฮสต • 255.255.255.192 สําหรับ Subnet ที่มีโฮสตจํานวน 62 โฮสต • 255.255.255.252 สําหรับ Subnet สําหรับอินเทอรเฟสแบบจุดตอจุด จํานวน 2 โฮสต Variable Length Subnet mask ใชโปรโตคอล RIPv1 ไมได ใชไดกับโปรโตคอล OSPF


408

รูปที่ 6.89 แสดงการแบง subnet mask แบบ Variable Length Subnet Mask 6.7.4 Classless Inter-Domain Routing ไซเดอร (CIDR) Classless Inter-Domain Routing เปนการจับกลุมเครือขายเขาดวยกันและรวม คากําหนดเสนทางเหลือเพียงคาเดียว ใชโปรโตคอล BGP ตัวอยางเชน มีโฮสต 900 โฮสต ไดรับจัดสรร 4 เครือขายคลาส C คือ195.0.32.0 , 195.0.33.0 , 195.0.34.0 , 195.0.35.0 ตองใช 22 บิตแรกรวมกัน • 11000011 00000000 00100000 00000000 = 195.0.32.0 • 11000011 00000000 00100001 00000000 = 195.0.33.0 • 11000011 00000000 00100010 00000000 = 195.0.34.0 • 11000011 00000000 00100011 00000000 = 195.0.35.0 subnet 11111111 11111111 11111100 00000000 = 255.255.252.0


409 คําถามทายบทเรียน จงตอบคําถามตอไปนี้ 1. Border Gateway Protocol คืออะไร 2. อธิบายจุดประสงคของการใช BGP 3. อธิบายหลักการเลือกเสนทางของ BGP 4. อธิบายรูปแบบของไอพีแอดเดรส 5. อธิบายการจัดคลาสเครือขาย 6. จงยกตัวอยางการทํา Subnet แบบ Variable Length Subnet Mask 7. จงยกตัวอยางการทํา Subnet แบบ Classless Inter-Domain Routing


410 วิธีสอนและกิจกรรม บรรยายประกอบหนังสืออิเล็กทรอนิกสและเขียนกระดาน สื่อการสอน • สื่ออิเล็กทรอนิกส หนังสืออิเล็กทรอนิกสวิชาเครือขายคอมพิวเตอร • โสตทัศนูปกรณ เครื่องฉายภาพแอลซีดี • หนังสืออางอิง 3, 9, 13 และ 19 งานที่มอบหมาย ตอบคําถามทายบทเรียน ศึกษาเพิ่มเติมจากหนังสืออางอิง การวัดผล การถาม-ตอบ ระหวางเรียน คําถามทายบทเรียน หมายเหตุ __________________________________________________________________________________ __________________________________________________________________________________ __________________________________________________________________________________ __________________________________________________________________________________ __________________________________________________________________________________ __________________________________________________________________________________ __________________________________________________________________________________ __________________________________________________________________________________ __________________________________________________________________________________ __________________________________________________________________________________ __________________________________________________________________________________ __________________________________________________________________________________


nana