440 likes | 625 Views
วิชาการจัดระบบเครือข่ายและการสื่อสารข้อมูลธุรกิจด้วยคอมพิวเตอร์. บทที่ 7 TCP/IP และ อินเตอร์เน็ต ( TCP/IP and Internet ) อ. รจนา วานนท์ roseyayee.wordpress.com roseyayee@gmail.com. TCP/IP และอินเทอร์เน็ต (TCP/IP and Internet).
E N D
วิชาการจัดระบบเครือข่ายและการสื่อสารข้อมูลธุรกิจด้วยคอมพิวเตอร์วิชาการจัดระบบเครือข่ายและการสื่อสารข้อมูลธุรกิจด้วยคอมพิวเตอร์ บทที่ 7 TCP/IP และอินเตอร์เน็ต(TCP/IP and Internet) อ. รจนา วานนท์ roseyayee.wordpress.com roseyayee@gmail.com
TCP/IP และอินเทอร์เน็ต (TCP/IP and Internet) • TCP/IP (Transmission Control Protocol/Internetworking Protocol) • เพื่อใช้สำหรับแลกเปลี่ยนข้อมูลบนเครือข่ายอินเทอร์เน็ต • แบ่งหน้าที่ความรับผิดชอบออกเป็นชั้นซ้อนกันเรียกว่า โปรโตคอลสแต็ก(Protocol Stack) • สามารถใช้งานเชื่อมโยงได้ดีกับเครือข่ายแบบท้องถิ่น • ปัจจุบันได้รับความนิยมอย่างมาก
ประวัติโดยย่อของเครือข่ายอินเทอร์เน็ต • อินเทอร์เน็ตเกิดจากโครงการเครือข่ายอาร์พาเน็ต(Advanced Research Project Agency Network : ARPANET) ภายใต้กระทรวงกลาโหมของสหรัฐอเมริกา • แบบแพ็กเก็ตสวิตชิ่งเชื่อมจุดต่อจุดบนสายสื่อสารความเร็วสูง วัตถุประสงค์ • 1 เพื่อให้นักวิทยาศาสตร์อยู่ต่างพื้นที่สามารถแลกเปลี่ยนข้อมูลกันได้ข้อมูลทางทหาร • 2 จะยังคงสามารถติดต่อกันได้แม้จะโดนโจมตีด้วยนิวเคลียร์ • หลังจากนั้นก็มีการนำมาใช้ในหน่วยงานต่างๆ จนกลายมาเป็นเครือข่ายสาธารณะที่ประชาชนทั่วไปสามารถใช้งานได้ “เครือข่ายอินเทอร์เน็ต” • ประเทศไทยเราเริ่มใช้งานอินเทอร์เน็ตปี 2530
เครือข่ายระดับสากล (Internetworking) • ทำงานในระดับชั้นสื่อสารฟิสิคัลและดาต้าลิงก์ รับส่งข้อมูลจากโหนดหนึ่งสู่โหนดถัดไป (Hop-to-Hop หรือ Node-to-Node)
ชั้นสื่อสารเน็ตเวิร์ก (Network Layer) • จากปัญหาก่อนหน้านี้จึงต้องเพิ่มชั้นสื่อสารเน็ตเวิร์กเข้ามาสำหรับส่งมอบข้อมูลในลักษณะ Host-to-Host ซึ่งกำหนดหรือวางเส้นทางแพ็กเก็ตข้อมูลส่งผ่านอุปกรณ์เร้าเตอร์หรือสวิตช์ ให้ส่งข้อมูลระหว่างเครือข่ายได้ • โปรโตคอลอื่นที่สนับสนุนในระดับชั้นนี้เช่น ARP, RARP, ICMP, IGMP
โปรโตคอล IP(Internetworking Protocol) • เป็นกลไกการส่งข้อมูลที่ใช้โปรโตคอล TCP/IP ในลักษณะคอนเนกชั่นเลส คือไม่รับประกันว่าข้อมูลจะถึงปลายทางหรือไม • ทำให้การทำงานของ IP ไม่ซับซ้อน • มีหน้าที่เพียงนำส่งข้อมูลไปยังปลายทางด้วยหมายเลขไอพี
การกำหนดตำแหน่งที่อยู่ใน IPv4(IPv4 Addressing) • TCP/IP จะกำหนดที่อยู่ด้วยไอพีแอดเดรส • ชุดตัวเลขฐานสองขนาด 32 บิต • มีความสำคัญต่อกลไกในการสื่อสารจากโฮสต์หนึ่งไปยังโฮสต์หนึ่งในระบบสื่อสาร • เราจะแบ่งออก 2 ส่วนคือ NetIDและ HostID • NetIDจะระบุเครือข่าย (Physical Network) • HostIDจะระบุตำแหน่งอุปกรณ์ เช่นตัวเครื่องคอมพิวเตอร์ • แมคแอดเดรสเป็นฟิสิคัลแอดเดรส ส่วนไอพีแอดเดรสเป็นแค่ลอจิคัลแอดเดรส
การกำหนดตำแหน่งที่อยู่ใน IPv4(IPv4 Addressing) • แบ่งออกเป็น4 ไบต์หรือ 4 ออคเทต • ออคเทตแรกถูกแบ่งออกไปเป็นตัวบ่งบอกว่าเป็นคลาสอะไร
การแทนค่าไอพีแอดเดรสแบบเลขฐานสองและฐานสิบ (Binary and Dotted Decimal Notation) • จำนวนตัวเลข 32 bit สามารถแทนเลขหมายได้ประมาณ 4 พันล้านเครื่องหรือ 2^32 • แต่ไม่สามารถใช้ได้ทั้งหมดต้องสงวนไว้สำหรับเฉพาะอย่าง • ด้วยความยากต่อการจดจำเราจึงต้องกำหนดด้วยเลขฐานสิบและใช้จดทศนิยมในการคั่นระหว่างออคเทต 10000000 00001011 00000011 00011111 128.11.3.31
การจัดสรรไอพีแอดเดรสแบบใช้คลาส(Classful Addressing) • แบ่งออกเป็น 5 ชนิดมีคลาส A, B ใช้งานเต็มแล้ว C ยังใช้งานอยู่ในปัจจุบัน • คลาส D ถูกสงวนไว้ใช้มัลติคลาสแอดเดรส • คลาส E ถูกสงวนไว้ใช้ในอนาคต
คลาส A(Class A) • ใช้หมายเลย NetIDขนาด 7 บิต • บิตแรกของออคเทตแรกจะมีค่าเป็น 0 สงวนไว้บ่งบอกว่าเป็นคลาส A • จะมีจำนวนเครือข่ายได้ 27 -2 เครือข่าย • ออคเทตแรกที่มีค่า 0 (00000000) และ 127 (011111111) จะสงวนไว้ • จะมีจำนวนของโฮสต์ขนาด 24 บิตสามารถมีจำนวนโฮสต์ได้ 224 – 2 • เหมาะกับองค์กรหรือหน่วยงานขนาดใหญ่ที่ต้องมีโฮสต์เยอะๆ
คลาส A(Class A)(cont.) • สามารถคำนวณหาแอดเดรสเริ่มต้นกับแอดเดรสสุดท้ายได้ดังนี้
คลาส B(Class B) • ใช้หมายเลย NetIDขนาด 14 บิต • บิตแรกของออคเทตแรกจะมีค่าเป็น 10 สงวนไว้บ่งบอกว่าเป็นคลาส B • จะมีจำนวนเครือข่ายได้ 214 -2 เครือข่าย • จะมีจำนวนของโฮสต์ขนาด 16 บิตสามารถมีจำนวนโฮสต์ได้ 216 – 2 • เหมาะกับองค์กรหรือหน่วยงานขนาดกลาง เช่นสถาบันศึกษา หน่วยงานรัฐ เอกชน
คลาส B(Class B)(cont.) • สามารถคำนวณหาแอดเดรสเริ่มต้นกับแอดเดรสสุดท้ายได้ดังนี้
คลาส C(Class C) • ใช้หมายเลขNetIDขนาด 21 บิต • บิตแรกของออคเทตแรกจะมีค่าเป็น 110 สงวนไว้บ่งบอกว่าเป็นคลาส C • จะมีจำนวนเครือข่ายได้ 221 -2 เครือข่าย • จะมีจำนวนของโฮสต์ขนาด 8บิตสามารถมีจำนวนโฮสต์ได้ 28 – 2 • เหมาะกับองค์กรหรือหน่วยงานขนาดเล็ก
คลาส C(Class C)(cont.) • สามารถคำนวณหาแอดเดรสเริ่มต้นกับแอดเดรสสุดท้ายได้ดังนี้
ความกว้างของไอพีแอดเดรสแต่ละคลาสความกว้างของไอพีแอดเดรสแต่ละคลาส
การจัดสรรไอพีแอดเดรสแบบใช้คลาส (ต่อ) • จะเห็นได้ว่า ไอพีแอดเดรสนั้นไม่ได้ใช้สำหรับชี้ตำแหน่งคอมพิวเตอร์แต่ละเครื่องอย่างเฉพาะเจาะจงแต่ไอพีแอดเดรสจะใช้บ่งชี้ตำแหน่งการเชื่อมโยงระหว่างคอมพิวเตอร์กับเครือข่าย
การแบ่งเครือข่ายย่อย (Subnetting) 141.14.2.12 141.14.23.10 141.14.2.10 Nกดกฟด 141.14.24.110 Network Class B 141.14.0.0 To the rest of the Internet 141.14.4.110 141.14.25.10 141.14.27.12 141.14.23.130
การแบ่งเครือข่ายย่อย (Subnetting) (cont.) 141.14.2.12 141.14.2.16 141.14.2.10 Nกดกฟด Nกดกฟด Subnetwork Class B 141.14.2.0 141.14.2.110 To the rest of the Internet Site 141.14.0.0 Nกดกฟด Subnetwork Class B 141.14.4.0 141.14.4.110 141.14.4.10 141.14.4.12 141.14.4.130
การแบ่งเครือข่ายย่อย (Subnetting) (cont.) • จากรูปเมือมีข้อมูลเข้ามาตัวเร้าเตอร์จะรู้ว่าจะต้องส่งไปเครือข่ายย่อยใดเพราะทั้งสองเครือข่ายยังสังกัดเครือข่ายเดียวกันคือ 141.14 • การแบ่งซับเน็ตออกเป็น 2 เครือข่ายดังนั้นเร้าเตอร์ก็จะใช้ 2 ออคเทตแรกเป็น NetIDออคเทตที่ 3 เป็น SubnetID (2) และออคเทตที่ 4 คือ HostID (21)
ลำดับชั้น 3 ระดับ (Three Levels of Hierarchy) • เป็นการยืมบิตของ HostIDมาใช้เพื่อกำหนดซับเน็ต เราจะกำหนดไอพีออกเป็น 3 ระดับ • 1.NetIDระดับแรกที่ใช้ระบุไซต์ (Network) • 2.SubNetIDระดับที่สองใช้ระบุฟิสิคัลซับเน็ตเวิร์ก • 3. HostIDระดับที่สามเป็นการระบุการเชื่อมต่อของโฮสต์กับซับเน็ตเวิร์ก Without subnetting 141 . 14 . 2 . 21 141 . 14 . 2 . 21 NetID HostID With Subnetting 141 . 14 . 2 . 21 NetID SubNet HostID
ซับเน็ตมาสก์ (Subnet Mask) • เป็นการทำควบคู่ไปกับการทำซับเน็ต • ซับเน็ตมาสก์หรือมาสกิ้ง (Masking)เป็นขบวนการที่บอกให้รู้ว่าเครือข่ายมีการแบ่งซับเน็ต • บิตที่ยืมไปทำการแบ่งซับเน็ตกีบิตและใช้ตำแหน่งใดเพื่อระบุเครือข่ายย่อย • ค่าดีฟอลต์ (Default)
ซับเน็ตมาสก์ (Subnet Mask)(cont.) • การตั้งค่าให้กับซับเน็ตมาสก์นั้นค่าที่เป็น1 จะตรงกับหมายเลขเครือข่ายและเครือข่ายย่อย ค่าที่เป็น 0 จะตรงกับหมายเลขโฮสต์
การจัดสรรไอพีแอดเดรสแบบไม่ใช่คลาส(Classless Addressing) • เป็นการมุ่งเน้นไปที่ไอพีแอดเดรสที่จะนำมาใช้งานกับโฮสต์ได้จริงโดยจะไม่สนใจเรื่องคลาส จึงทำให้สามารถมีไอพีเหลือให้บริการลูกค้าอีกจำนวนมาก
CIDR Notation(Classless Inter-Domain Routing) • CIDR (ไซเดอร์ CI-DER) ใช้สำหรับการทำมาสกิ้งด้วยสัญลักษณ์ / (Slash) แล้วตามด้วยขนาดของมาสก์ • ตัวอย่าง128.10.0.0 จะมี NetID 16 บิตแรก (Prefix) และ HostID 16 บิตหลัง(Suffix) ก็จะแทนด้วย 128.10.0.0/16
การคำนวณหาแอดเดรสซับเน็ตการคำนวณหาแอดเดรสซับเน็ต • การคำนวณหาแอดเดรสซับเน็ตจะใช้ประโยชน์จากซับเน็ตมาสก์และไอพีแอดเดรส • การมาสก์แบบ Boundary-Level • เป็นการตั้งค่าซับเน็ตมาสก์ตามค่าดีฟอลต์ของแต่ละคลาสด้วยการกำหนดบิตเป็น 1 หรือ 0 ทั้งหมดในแต่ละออคเทต ค่าจะตรงกับเลขฐานสิบคือ 255 หรือ 0 เป็นวิธีที่คำนวณหาแอดเดรสซับเน็ตได้ง่าย
การคำนวณหาแอดเดรสซับเน็ต (ต่อ) • การมาสก์แบบ Nonboundary-Level • เป็นการมาสก์ที่ไม่ได้กำหนดเป็น 255 หรือ 0 ถือว่าเป็นการกำหนดภายนอกขอบเขต เป็นการกำหนดแบบ Custom จะใช้ค่าซับเน็ตมาสก์เป็นตัวกำหนดจำนวนซับเน็ตและจำนวนโฮสต์ตามความเหมาะสม การหาแอดเดรสซับเน็ตด้วยการนำออคเทตมางมาสก์ไปเทียบบิตกับหมายเลขไอพีด้วยโอเปอเรชั่น And • ตัวอย่าง
การคำนวณหาแอดเดรสซับเน็ต (ต่อ) • โอเปอเรชั่น AND • 0 and 0 = 0, 0 and 1 = 0, 1 and 0 = 0, 1 and 1 = 1 • ผลที่ได้คือ • 123 = 0 1 1 1 1 0 1 1 • 192 = 1 1 0 0 0 0 0 0 • 64 = 0 1 0 0 0 0 0 0 • ดังนั้นไอพีแอดเดรส 45.123.21.8 ที่มีค่ามาสก์เป็น 255.192.0.0 จะมีแอดเดรสซับเน็ตคือ 45.64.0.0 • โอเปอเรชั่น OR กับ bitwise not Mask ก็จะได้ Broadcast Address • Bitwise not เช่น 0011 ก็จะได้ 1100
เครือข่ายไอพีภายใน (Private IP Network) • เราสามารถ Private IP นี้ได้โดยไม่ต้องจดทะเบียนกับทางบริษัทที่บริการอินเทอร์เน็ต • Loopback Address 127.0.0.1 ใช้สำหรับทดสอบหาข้อผิดพลาดจะส่งแพ็กเก็ตกลับมายังเครื่องตนเอง
Network Address Translation(NAT) • เพื่อการทำมัลติเพล็กซ์จราจรเครือข่ายภายในให้สามารถออกไปยังเครือข่ายอินเทอร์เน็ตได้ • เป็นโปรแกรมที่รันอยู่ในระบบหรือบรรจุอยู่ที่เร้าเตอร์ • ช่วยแก้ปัญหาการขาดแคลนไอพีด้วย • จะดำเนินการแปลง (Mapping) ไปรเวตไอพีมาเป็นไอพีแอดเดรสจริงที่ได้รับการจดทะเบียน (Registered IP Address) เพื่อให้สามารถเชื่อมต่ออินเทอร์เน็ตได้
NAT แบบสเตติก (Static NAT) • เป็นการจับคู่ระหว่างไปรเวตไอพีกับไอพีแอดเดรสจริงแบบหนึ่งต่อหนึ่ง • ไม่ได้ช่วยประหยัดไอพี • ทำให้บุคคลภายนอกเข้าถึงเครือข่ายได้
NAT แบบไดนามิก (Dynamic NAT) • เป็นการจับคู่ระหว่างไปรเวตไอพีกับไอพีแอดเดรสจริงแบบหมุ่นเวียนไม่ตายตัว • ไม่ได้ช่วยประหยัดไอพี • ทำให้บุคคลภายนอกไม่สามารถเข้าถึงเครือข่ายได้ • ไอพีจริงจะมีการกำหนดช่วงให้และหมุ่นเวียนไปเรือยๆภายในช่วงที่กำหนดไว้
NAT แบบโอเวอร์โหลดดิ้ง (Overloading NAT) • เป็นการจับคู่ระหว่างไปรเวตไอพีกับไอพีแอดเดรสจริงแบบแปลงไอพีจริงเพียงหมายเลขเดียวเท่านั้นแต่จะมีหมายเลขพอร์ตที่แตกต่างกัน • ช่วยประหยัดไอพี • มีชื่อเรียกอีกแบบ เช่น Port Address Translation (PAT), Single Address NAT, Port-Level Multiplexed NAT
NAT แบบโอเวอร์แลปปิ้ง (Overlapping NAT) • เครือาข่ายภายในที่ได้นำไอพีแอดเดรสจริงมาใช้ซึ่งแอดเดรสดังกล่าวเป็นของเครือข่ายอื่นหรือกรณีที่ได้เปลียน ISP รายใหม่ ทำให้ได้หมายเลขใหม่แทนของเดิมที่ยกเลิกไป แต่ไม่ต้องคอนฟิกหมายเลขไอพีภายในเครือข่ายทั้งหมด • จะทำการแปลงไอพีจริงที่ไม่ใช่ของเรามาเป็นไอพีจริงที่เราได้จดทะเบียนไว้
ไอพีเวอร์ชั่น 6(IPv6) • ปัจจุบันถือว่าเป็นมาตรฐานแล้ว • ยังคงสามารถทำงานร่วมกัน IPv4 ได้ • มีการเปลี่ยนแปลงในรายละเอียดบางส่วนเช่น • มีการใช้ขนาดของแอดเดรสที่ใหญ่ขึ้น • รูปแบบของดาต้าแกรมเฮดเดอร์ได้มีการเปลี่ยนโครงสร้างใหม่ทั้งหมด • ใช้เฮดเดอร์แบบ Fixed-Length ในการควบคุมข้อมูลเฮดเดอร์
การกำหนดตำแหน่งที่อยู่ใน IPv6(IPv6 Addressing) • 1. ยูนิคาสต์ (Unicast) คือแอดเดรสที่ใช้ติดต่อกับคอมพิวเตอร์เครื่องเดียวจะส่งไปยังแอดเดรสปลายทางสำหรับเครื่องนั้นเพียงเครื่องเดียว • 2. มัลติคาสต์ (Multicast) คือแอดเดรสที่ใช้ติดต่อไปยังกลุ่มคอมพิวเตอร์จะส่งไปยังกลุ่มสมาชิก • 3. เอนนีคาสต์ (Anycast) คือแอดเดรสที่ใช้ติดต่อยังกลุ่มทีใช้ฟรีฟิกซ์เหมือนกันจะส่งมอบไปยังเครื่องที่อยู่ใกล้กับผู้ส่งมากที่สุด
การแทนค่าไอพีแอดเดรสด้วยเลขฐานสิบหก(IPv6 Colon Hexadecimal Notation) • จะมีขนาด 128 บิต • แทนค่าแอดเดรสในรูปแบบเลขฐานสิบหก • แบ่งออกเป็น 8 กลุ่มแต่ละกลุ่มมี 16 บิตใช้เครื่องหมาย “:” (Colon)ในการแบ่งส่วนแต่ละกลุ่ม • เช่น 69DC:8864:FFFF:FFFF:0:1280:8C0A:FFFF • สามารถย่อได้ถ้ามี 0 นำหน้าสามารถตัดออกได้ หรือ 0 ติดกันเป็นชุดแทนด้วย “::” แต่จะใช้ได้เพียงครั้งเดียว
การแทนค่าไอพีแอดเดรสด้วยเลขฐานสิบหก(IPv6 Colon Hexadecimal Notation)(cont.) • ตัวอย่าง • 69DC:0064:FFFF:FFFF:0000:1280:8C0A:000F • 69DC:64:FFFF:FFFF:0:1280:8C0A:F • ตัวอย่าง • FDEC:0:0:0:0:BBFF:0:FFF • FDEC::BBFF:0:FFF
แบบฝึกหัด • 1. ให้ตอบคำถามในช่องที่ว่าง • 2. ให้ตอบคำถามในช่องที่ว่าง
แบบฝึกหัด • 3. ให้ตอบคำถามในช่องที่ว่าง จากไอพีแอดเดรสที่กำหนดให้ต่อไปนี้จงระบุดค่าดีฟอลต์ซับเน็ตมาสก์
แบบฝึกหัด • 4. จงอธิบายหลักการทำงานของ NAT โดยมีกี่แบบอะไรบ้าง