วันเสาร์ที่ 14 พฤศจิกายน พ.ศ. 2558

IP Address


IP Address IP Address ย่อมาจากคำเต็มว่า Internet Protocal Address คือหมายเลขประจำเครื่องคอมพิวเตอร์แต่ละเครื่องในระบบเครือข่ายที่ใช้โปรโตคอลแบบ TCP/IP ถ้าเปรียบเทียบก็คือบ้านเลขที่ของเรานั่นเอง ในระบบเครือข่าย จำเป็นจะต้องมีหมายเลข IP กำหนดไว้ให้กับคอมพิวเตอร์ และอุปกรณ์อื่นๆ ที่ต้องการ IP ทั้งนี้เวลามีการโอนย้ายข้อมูล หรือสั่งงานใดๆ จะสามารถทราบตำแหน่งของเครื่องที่เราต้องการส่งข้อมูลไป จะได้ไม่ผิดพลาดเวลาส่งข้อมูล ซึ่งประกอบด้วยตัวเลข 4 ชุด มีเครื่องหมายจุดขั้นระหว่างชุด เช่น 192.168.100.1 หรือ 172.16.10.1 เป็นต้น โดยหมายเลข IP Address ของเครื่องคอมพิวเตอร์แต่ละเครื่องจะมีค่าไม่ซ้ำกัน สิ่งตัวเลข 4 ชุดนี้บอก คือ Network ID กับ Host ID ซึ่งจะบอกให้รู้ว่า เครื่อง computer ของเราอยู่ใน network ไหน และเป็นเครื่องไหนใน network นั้น เราจะรู้ได้อย่างไรว่า Network ID และ Host ID มีค่าเท่าไหร่ ก็ขึ้นอยู่กับว่า IP Address นั้น อยู่ใน class อะไร

IP Address หรือ Internet Protocol Address มีความสำคัญอย่างไร และเกี่ยวข้องอะไรกับเราบ้าง?

ปัจจุบันคงไม่ต้องกล่าวถึงแล้ว IP Address เป็นหมายเลขที่ใช้กำหนดให้กับเครื่องคอมพิวเตอร์ หรือ อุปกรณ์ Network ต่างๆ เช่น Router, Switch , Firewall , IP Camera , IP Phone , Access point , เป็นต้น และอีกไม่นานอุปกรณ์ไฟฟ้าหรืออุปกรณ์สื่อสารทุกประเภทที่จะออกวางจำหน่ายจะมี IP Address ติดมาด้วยจากโรงงานเลยทีเดียว IP Address ที่ใช้ในปัจจุบันนั้นจะเป็นชนิดที่เรียกว่า IPv4 (IP version 4) ซึ่งไม่เพียงพอต่อการใช้งาน จึงมีการพัฒนาเป็น IPv6 (IP version 6) เพื่อรองรับอุปกรณ์และเทคโนโลยีใหม่ๆที่ต้องใช้ IP Address ในการติดต่อสื่อสาร และในเมืองไทยเองก็มีการใช้ IPv6 ในหลายหน่วยงานแล้ว หน่วยงานที่จัดสรร IP Address ให้ในแถบ Asia Pacific คือAPNIC ผู้ให้บริการ Internet หรือ ISP จะขอ IP จาก APNIC แล้วนำมาแจกจ่ายให้แก่ลูกค้าของ ISP นั้นๆอีกต่อไปสำหรับผู้ที่จะสอบใบ Certificate ค่ายต่างๆ เช่น CCNA , CCNP , LPI , Security + ,CWNA เป็นต้น ล้วนแล้วแต่จะต้องมีความรู้เกี่ยวกับ IP Address ทั้งสิ้น โดยเฉพาะ IPv4 จะต้องคำนวณได้อย่างแม่นยำและรวดเร็ว
ไอพีส่วนตัว (Private IP)

ไอพีส่วนตัวมีไว้สำหรับใช้งานภายในองค์กรเท่านั้น ไม่ว่าองค์กรนั้นจะมีขนาดใหญ่หรือเล็กเพียงใดก็ตาม ได้แก่
              ไอพีส่วนตัว คลาส A เริ่มตั้งแต่ 10.0.0.0 ถึง 10.255.255.255 สับเน็ตมาสต์ที่ใช้ได้ เริ่มตั้งแต่ 255.0.0.0 ขึ้นไป

ไอพีส่วนตัว คลาส B เริ่มตั้งแต่ 172.16.0.0 ถึง 172.31.255.255 สับเน็ตมาสต์ที่ใช้ได้ เริ่มตั้งแต่ 255.240.0.0 ขึ้นไป
ไอพีส่วนตัว คลาส C เริ่มตั้งแต่ 192.168.0.0 ถึง 192.168.255.255 สับเน็ตมาสต์ที่ใช้ได้ เริ่มตั้งแต่ 255.255.0.0 ขึ้นไป
             ไอพีส่วนตัวข้างต้นถูกกำหนดให้ไม่สามารถนำไปใช้งานในเครือข่ายสาธารณะ (Internet) ได้

ไอพีสาธารณะ (Public IP)
              ไอพีสาธารณะมีไว้สำหรับให้แต่ละองค์กร แต่ละบุคคล ต่างก็สามารถเชื่อมต่อเข้าหากัน รับส่งข้อมูลระหว่างกันผ่านเครือข่ายสาธารณะได้

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

ชื่อและเลข IP
             อินเตอร์เน็ตมีคอมพิวเตอร์ต่ออยู่เป็นล้านเครื่อง หลายท่านอาจตั้งข้อสงสัยว่าการที่เราส่งอีเมล์ไปยังปลายทางจะไปได้อย่างไร หรือเมื่อเราต้องการ LOGIN เข้าเครื่องอื่นที่อยู่บนเครือข่าย ระบบเครือข่ายรู้ได้อย่างไรว่าเครื่องนั้นอยู่ที่ใด

รหัสหมายเลข IP ประจำเครื่อง
             คอมพิวเตอร์ทุกเครื่องที่ต่ออยู่บนเครือข่ายจะมีหมายเลขรหัสประจำเครื่องหมายเลขรหัสนี้เรียกว่า IP number ตัวเลข IP แต่ละเครื่องทั่วโลกจะต้องไม่ซ้ำกันตัวเลขนี้จะได้รับการกำหนดเป็นกฎเกณฑ์ให้แต่ละองค์กรนำไปปฏิบัติ โดยผู้ที่จะสร้างเครือข่ายต้องทำการขอหมายเลขประจำเครือข่าย เพื่อมากำหนดส่วนขยายต่อสำหรับเครื่องเอาเอง

เช่น เครื่องคอมพิวเตอร์ SUN ที่ทำหน้าที่เป็นเกทเวย์สำหรับเมล์ของเครือข่ายนนทรี ชื่อ nontri มีหมายเลข IP เป็นตัวเลขประจำเครื่องนี้มีขนาด 32 บิต แบ่งเป็น 4 ฟิลด์ แต่ละฟิลด์จะมี 8 บิต แต่เมื่อเรียกรหัสหมายเลข IP นี้ ใช้ตัวเลขฐานสิบแบ่งเป็น 4 ตัว โดยมีจุด (.) คั่นระหว่างตัวดังนั้นจากตัวเลข 32 บิต ดังกล่าวเรียกได้เป็น 158.108.2.71
             ตัวเลขไบนารี 32 หลัก เป็นตัวเลขที่จดจำได้ยากแต่เครื่องคอมพิวเตอร์ก็ใช้เลขเหล่านี้ได้อย่างถูกต้อง แต่เมื่อกำหนดเลข 4 ฟิลด์ แต่ละฟิลด์มีขนาด 0-255 เมื่อดูแล้วจะทำให้จำได้ง่ายขึ้นชื่อและเลข IP- อินเตอร์เน็ตมีคอมพิวเตอร์ต่ออยู่เป็นล้านเครื่อง หลายท่านอาจตั้งข้อสงสัยว่าการที่เราส่งอีเมล์ไปยังปลายทางจะไปได้อย่างไร หรือเมื่อเราต้องการ LOGIN เข้าเครื่องอื่นที่อยู่บนเครือข่าย ระบบเครือข่ายรู้ได้อย่างไรว่าเครื่องนั้นอยู่ที่ใด

รหัสหมายเลข IP ประจำเครื่อง
             คอมพิวเตอร์ทุกเครื่องที่ต่ออยู่บนเครือข่ายจะมีหมายเลขรหัสประจำเครื่องหมายเลขรหัสนี้เรียกว่า IP number ตัวเลข IP แต่ละเครื่องทั่วโลกจะต้องไม่ซ้ำกันตัวเลขนี้จะได้รับการกำหนดเป็นกฎเกณฑ์ให้แต่ละองค์กรนำไปปฏิบัติ โดยผู้ที่จะสร้างเครือข่ายต้องทำการขอหมายเลขประจำเครือข่าย เพื่อมากำหนดส่วนขยายต่อสำหรับเครื่องเอาเอง

เช่น เครื่องคอมพิวเตอร์ SUN ที่ทำหน้าที่เป็นเกทเวย์สำหรับเมล์ของเครือข่ายนนทรี ชื่อ nontri มีหมายเลข IP เป็นตัวเลขประจำเครื่องนี้มีขนาด 32 บิต แบ่งเป็น 4 ฟิลด์ แต่ละฟิลด์จะมี 8 บิต แต่เมื่อเรียกรหัสหมายเลข IP นี้ ใช้ตัวเลขฐานสิบแบ่งเป็น 4 ตัว โดยมีจุด (.) คั่นระหว่างตัวดังนั้นจากตัวเลข 32 บิต ดังกล่าวเรียกได้เป็น 158.108.2.71
             ตัวเลขไบนารี 32 หลัก เป็นตัวเลขที่จดจำได้ยากแต่เครื่องคอมพิวเตอร์ก็ใช้เลขเหล่านี้ได้อย่างถูกต้อง แต่เมื่อกำหนดเลข 4 ฟิลด์ แต่ละฟิลด์มีขนาด 0-255 เมื่อดูแล้วจะทำให้จำได้ง่ายขึ้นใช้ชื่อดีกว่า- เพื่อให้ระบบการเรียกชื่อง่ายขึ้นและการบริหารเครือข่ายทำได้ดี จึงมีการกำหนดชื่นแทนรหัส IP โดยมีการตั้งชื่อสำหรับเครื่องคอมพิวเตอร์แต่ละเครื่องที่อยู่บนเครือข่าย เช่น nontri.ku.ac.th ซึ่งแทนหมายเลข 158.108.162 หรือเครื่อง maspar ซึ่งเป็นเครื่องคอมพิวเตอร์แบบขนานก็ใช้ชื่อ maspar.cpe.ku.ac.th โดยใช้แทนรหัส 158.108.162 ดังนั้นเครื่องที่ต่ออยู่บนเครือข่ายอินเตอร์เน็ตจะมีการตั้งชื่อเครื่องเพื่อให้รู้จักกันได้ง่ายขึ้น การตั้งชื่อมีการแบ่งเป็นลำดับขั้น ตัวที่อยู่ขวามือสุด คือชื่อย่อประเทศ เช่น th หมายถึงประเทศไทย

หมายเลขต้องห้าม
             เนื่องจากเครือข่ายก็อาจจำเป็นต้องใช้ IP Address ดังนั้น จึงจำเป็นต้องมีการจำกัดบางหมายเลขเพื่อใช้เป็นการภายใน ได้แก่
              1. Class A ตั้งแต่ 10.xxx.xxx.xxx

2. Class B ตั้งแต่ 172.16.xxx.xxx ถึง 172.31.xxx.xxx

3. Class C ตั้งแต่ 192.168.0.xxx ถึง 192.168.255.xxx
สำหรับภายในองค์กร ก็มีหมายเลขต้องห้ามเช่นกัน ได้แก่ 
             1. 127.xxx.xxx.xxx หมายเลขนี้ใช้สื่อสารกับตัวเอง2. 0.0.0.0

การแบ่ง Class ของเครือข่าย IP Address
             การติดต่อสื่อสารภายในเครือข่ายอินเตอร์เน็ต จะต้องมี IP Address สำหรับการส่งข้อมูลเพื่อติดต่อถึงกัน โดยตามปกติแล้ว IP Address จะมีการแบ่งออกเป็น 2 ส่วน คือ ส่วนที่บ่งบอกว่าเป็นหมายเลขเครือข่าย และหมายเลขเครื่องคอมพิวเตอร์ ซึ่งค่าของ IP Address จะมีการกำหนดค่าของ IP Address เป็นไบต์ (Byte) และกำหนดค่าด้วยเลขฐานสิบ ตัวอย่างเช่น IP Address 202.28.8.1 เป็นต้น

โดยการทำงานภายใน IP Address ยังมีการแบ่งออกเป็นระดับชั้น (Class) ต่าง ๆ 5 Class คือ Class A, B, C, D และ E ซึ่งในแต่ละ Class จะมี หมายเลข IP จะมีทั้งหมด 32 บิต แบ่งออกเป็น 4 ฟิลด์ โดยแต่ละฟิลด์จะมี 8 บิต ซึ่งการแบ่งเป็น 4ฟิลด์นั้น ความจริงเป็นการกำหนดหมายเลขของเครื่องเครือข่าย และหมายเลขของเครื่องคอมพิวเตอร์ รายละเอียดของแต่ละ Class มีดังนี้
               Class A: หมายเลขของ IP Address เริ่มตั้งแต่ 1.0.0.0-127.255.255.255 ซึ่งเหมาะสมสำหรับเครือข่ายที่มีขนาดใหญ่ เนื่องจากสามารถรองรับจะมีเครือข่ายได้ 126 เน็ตเวิร์ค และในแต่ละเครือข่ายสามารถมีเครื่องคอมพิวเตอร์ได้ประมาณ 16 ล้านเครื่อง ตัวอย่างเช่น ค่า IP Address ของ Class A เป็น 120.25.2.3 หมายถึง เครือข่าย 120 หมายเลขเครื่อง 25.2.3

 Class B: หมายเลขของ IP Address เริ่มตั้งแต่ 128.0.0.0-191.255.255.255 จะมีเครือข่ายขนาด 16384 เน็ตเวิร์ค และจำนวนเครื่องลูกข่ายในเครือข่ายได้ 64,516 เครื่อง ตัวอย่างเช่น ค่า IP Address ของ Class B เป็น 145.147.45.2 หมายถึง เครือข่าย 145.147 หมายเลขเครื่อง 45.2

 Class C: หมายเลขของ IP Address เริ่มตั้งแต่ 192.0.0.0-223.255.255.255 จะมีจำนวนเครือข่ายขนาด 2M+ เน็ตเวิร์ค และเครื่องลูกข่ายในแต่ละเครือข่ายได้ประมาณ 254 เครื่อง ตัวอย่างเช่น ค่า IP Address ของ Class C เป็น 202.28.10.5 หมายถึง หมายเลขเครือข่าย 202.28.10 หมายเลขเครื่อง 5

Class D:เป็นการสำรองหมายเลข IP Address ช่วง 224.0.0.0-239.255.255.255 สำหรับการส่งข้อมูลแบบ Multicast ซึ่งจะไม่มีการแจกจ่ายใช้งานทั่วไปสำหรับบุคคลทั่วไป

Class E: เป็นการสำรองหมายเลข IP Address ช่วง 240.0.0.0-255.255.255.255 สำหรับการทดสอบ และพัฒนา
IP address

เรามักได้ยิน ระบบการสื่อสารแบบ TCP/IP เป็นประจำ ส่วนการทำงานดังกล่าวครอบคลุมอุปกรณ์การสื่อสารเกือบทุกประเภทในปัจจุบัน เราลองมาดูว่า มันทำงานยังไงกันดีกว่า
IP address  คือระบบการอ้างอิง การมีตัวตนอยู่ของคอมพิวเตอร์ โดยปกติเราแบ่ง IP address เป็น 2 แบบ

 1. Public IP address (อาจเรียกอย่างไม่เป็นทางการว่า WAN IP address) คือ IP address ที่ใช้งานจริงมีการจดทะเบียนและเสียเงินเพื่อใช้งานจริงๆ มีการจดบันทึกในระบบว่า ใครใช้งาน IP อะไรในวงกว้าง ทำอะไรผิดระวัง IP address ไปโผล่บน Server
             2. Private IP address (อาจเรียกว่า LAN IP address) คือ IP address ที่ใช้กันในเฉพาะระบบวงปิด เช่นใน Office หรือในบ้านที่มีคอมพิวเตอร์มากกว่า 1 เครื่อง IP ระบบนี้หากต้องการใช้กับ เครื่องนอกวงต้องใช้ อุปกรณ์ที่เรียกว่า NAT ไม่ใช่น้องแนทนะครับ (Network Address Translator) จะทำการแปลข้อมูลจากวง LAN ไปออกภายนอก

IPv4
              ประกอบด้วยเลขฐานสอง 32 bits (4 bytes ,( 8bits=1byte)) แบ่งเป็น 4 กลุ่ม กลุ่มละ 8 bits แต่ละกลุ่มนั้นจะคั่นด้วย . ( Dot )


กรณีตัวเลขน้อยสุดหรือเป็น เลข 0 ทั้งหมด   ---->  00000000 . 00000000 . 00000000 . 00000000

กรณีตัวเลขมากสุดหรือเป็น  เลข 1 ทั้งหมด  ---->  11111111 . 11111111 . 11111111 . 11111111

เมื่อแปลงเป็นเลขฐาน 10 จะได้

กรณีตัวเลขน้อยสุดหรือเป็น เลข 0 ทั้งหมด  ---->  0.0.0.0

กรณีตัวเลขมากสุดหรือเป็น เลข 1 ทั้งหมด  ----> 255.255.255.255

ก่อนการคำนวณเรื่อง IP เพื่อความรวดเร็ว ให้เขียนตามด้านล่างนี้

IPv4 จะมีตัวเลขที่เป็นไปได้ทั้งหมดคือตั้งแต่ 0.0.0.0 - 255.255.555.555

สามารถแบ่ง IPv4 ได้เป็น 5 แบบ หรือ 5 Class ตามด้านล่าง โดยวิธีการแบ่งจะอ้างอิงจาก byte ที่ 1 ดังนี้

class A  ---->  byte ที่ 1 ตัวเลขบิตแรก จะเป็น 0

class B    ---->  byte ที่ 1 ตัวเลขบิตแรกจะเป็น 1 บิตที่ 2 จะเป็น 0

class C    ---->  byte ที่ 1 ตัวเลข 2 บิตแรก จะเป็น 1 บิตที่ 3 จะเป็น 0

class D     ---->  byte ที่ 1ตัวเลข 3 บิตแรก จะเป็น 1 บิตที่ 4 จะเป็น 0

class E      ---->   byte ที่ 1 ตัวเลข 4 บิตแรกจะเป็น 1

ดังนั้นจะได้ผลตามรูปด้านล่าง


จะได้ IP ในแต่ละ Class ดังนี้

              Class A จะเริ่มต้นตั้งแต่ 0.0.0.0 ถึง 127.255.255.255


              Class B จะเริ่มต้นตั้งแต่ 128.0.0.0 ถึง 191.255.255.255


            Class C จะเริ่มต้นตั้งแต่ 192.0.0.0 ถึง 223.255.255.255

              Class D จะเริ่มต้นตั้งแต่ 224.0.0.0 ถึง 239.255.255.255
              Class E จะเริ่มต้นตั้งแต่ 240.0.0.0 ถึง 255.255.255.255
IP ที่สามารถนำไป Set ให้อุปกรณ์ได้จะมีอยู่ 3 Class คือ Class A, B และ C ส่วน IP Class D จะสงวนไว้ใช้สำหรับ multicast applications และ IP Class E จะสงวนไว้สำหรับงานวิจัย หรือไว้ใช้ในอนาคต
IPv4 ยังแบ่งเป็น 2 ประเภท คือ Public IP ( IP จริง ) และ Private IP ( IP ปลอม )
·       Public IP ( IP จริง ) คือ IP ที่สามารถ set ให้อุปกรณ์network เช่น Server หรือ Router
แล้วสามารถติดต่อสื่อสารกับ Public IP ( IP จริง ) ด้วยกัน หรือออกสู่Network Internet ได้ทันที
·       Private IP ( IP ปลอม ) สามารถนำมา ใช้set ให้กับ PC หรืออุปกรณ์ในออฟฟิตได้แต่ไม่สามารถออกสู่ Public IP หรือออก Internet ได้ ต้องมีอุปกรณ์ Gateway เช่น Router ,Server หรือ Modem DSL เปิด Service NAT ( Network Address Translation ) ไว้ จึงจะสามารถออกสู่ Internet ได้
Private IP จะมีเฉพาะ Class A,B และ C ดังนี้
Class A : 10.x.x.x ( 10.0.0.0 - 10.255.255.255 )
Class B : 172.16.x.x - 172.31.x.x ( 172.16.0.0 - 172.31.255.255 )
Class C : 192.168.x.x ( 192.168.0.0 - 192.168.255.255 )
การคำนวณ  IPv4
เมื่อเราได้   IP Address มา 1 ชุด สิ่งที่จะต้องบอกได้จาก IP Address ที่ได้มาคือ
1. Subnet Mask คือ IP Address อะไร
2. Network IP คือ IP Address อะไร
3. Broadcast IP คือ IP Address อะไร
4. Range host IP ที่สามารถนำมาใช้งานได้ มีIP อะไรบ้าง
5. จำนวน Subnet , จำนวน host / Subnet
Subnet Mask ทำหน้าที่แบ่ง network ออกเป็นส่วนย่อยๆ ลักษณะคล้ายกับ IP Address
คือประกอบด้วยตัวเลข 4 ตัวคั่นด้วยจุด เช่น 255.255.255.0 วิธีการที่จะบอกว่า computer แต่ละเครื่องจะอยู่ใน network วงเดียวกัน (หรืออยู่ใน subnet เดียวกัน) หรือไม่นั้นบอกได้ด้วยค่า Subnet Mask
วิธีการหา Subnet Mask
·       /30 หมายถึง mask 30 bits แรก
·       /27 หมายถึง mask 27 bits แรก
·       /20 หมายถึง mask 20 bits แรก
ให้ทำการแปลง mask bit ที่กำหนดให้ เป็นค่า Subnet Mask
วิธีการคือ bits ที่อยู่หน้าตัวmask ให้แทนด้วยเลข 1 bits ที่อยู่หลังให้แทนด้วยเลข 0
·       Ex /30
/30        ---->    11111111 . 11111111 . 11111111 . 111111/00
จะได้ค่า Subnet Mask
/30   ---->  255.255.255.252
·       Ex /27
/27  ---->  11111111 . 11111111 . 11111111 . 111/00000
จะได้ค่า Subnet Mask
/27    ---->  255.255.255.224
·       Ex /20
/20     ---->  11111111 . 11111111 . 1111/0000 . 00000000
จะได้ค่า Subnet Mask
/20    ----> 255.255.240.0
ตัวอย่าง Subnet Mask ต่างๆ มีดังนี้
Mask ที่เป็นค่า default ของ IP Class ต่างๆมีดังนี้
Class A = Mask 8 bits = 255 . 0 . 0 . 0
              Class B = Mask 16 bits = 255 . 255 . 0 . 0
              Class C = Mask 24 bits = 255 . 255 . 255 . 0
Subnet mask ทั่วไป
              Mask 10 = 255 . 192 . 0 . 0 Mask 21 = 255 . 255 . 248 . 0
              Mask 11 = 255 . 224 . 0 . 0 Mask 22 = 255 . 255 . 252 . 0
              Mask 12 = 255 . 240 . 0 . 0 Mask 23 = 255 . 255 . 254 . 0
              Mask 13 = 255 . 248 . 0 . 0 Mask 25 = 255 . 255 . 255 . 128
              Mask 14 = 255 . 252 . 0 . 0 Mask 26 = 255 . 255 . 255 . 192
            Mask 15 = 255 . 254 . 0 . 0 Mask 27 = 255 . 255 . 255 . 224
              Mask 17 = 255 . 255 . 128 . 0 Mask 28 = 255 . 255 . 255 . 240
              Mask 18 = 255 . 255 . 192 . 0 Mask 29 = 255 . 255 . 255 . 248
            Mask 19 = 255 . 255 . 224 . 0 Mask 30 = 255 . 255 . 255 . 252
              Mask 20 = 255 . 255 . 240 . 0 Mask 31 = 255 . 255 . 255 . 254
เพื่อให้การแปลงตัวเลขจากเลขฐานสอง เป็นฐานสิบเร็วขึ้นให้ดูจากด้านล่าง เช่นถ้าเป็น เลข 1 ทั้งหมดจะได้เลข ฐานสิบคือ 255 ถ้าเป็นเลข 1 จำนวน 4 ตัวจะคือ 240 ถ้าเป็นเลข 0 ทั้งหมด จะได้เลข 0
        หลังจากได้ Subnet Mask แล้ว ขั้นตอนต่อไปคือการหา Network IP และ Broadcast IP
Network IP คือ IP ตัวแรกของ Subnet ปกติจะเอาไว้ประกาศเรื่องของ Routing จะไม่สามารถนำม Set ให้แก่อุปกรณ์หรือเครื่อง PC ได้
Broadcast IP คือ IP ตัวสุดท้ายของ Subnet ปกติจะทำหน้าที่ Broadcast ให้อุปกรณ์ที่อยู่ในวงเดียวกัน จะไม่สามารถนำมา Set ให้แก่อุปกรณ์หรือเครื่อง PC ได้เช่นกัน
Ex.1 192.168.22.50/30
จากโจทย์ /30 เมื่อแปลงเป็น Subnet Mask จะได้ 255.255.255.252
ให้ดูจากที่เขียนไว้ด้านบนนะครับ ถ้าเป็น 1 หมดทั้ง 8 ตัวจะได้255 ( แปลงจากฐานสองเป็นฐานสิบ ) เป็น 1 ทั้งหมด 6 ตัวจะได้ 252 ดังนั้นจึงได้subnet mask เป็น 255.255.255.252
ต่อไป หาว่า จำนวน IP ต่อ Subnet มีจำนวนเท่าไหร่ จากค่า Subnet Mask ที่ให้มาดูที่2 bit ที่เหลือ ที่เป็นอะไรก็ได้นั้น ตัวเลขที่เป็นไปได้หมดคือ 00 , 01 , 10 , 11 มี4 ตัว สรุปคือ จำนวน IP ต่อ Subnet เมื่อ Subnet Mask คือ 255.255.255.252 คือ 4 ตัว หรือ ใช้วิธีลัดดูจากที่เขียนไว้ ตัวเลขที่อยู่บน 252 คือ 4 ตามด้านล่าง
และเมื่อนำ 00 , 01 , 10 , 11 แปลงเป็นฐานสิบจะได้
00 แปลงเป็นฐานสิบจะได้ 0
01 แปลงเป็นฐานสิบจะได้ 1
10 แปลงเป็นฐานสิบจะได้ 2
11 แปลงเป็นฐานสิบจะได้ 3
ดังนั้นถ้า /30 จำนวน IP ในแต่ละ subnet ที่จะเป็นไปได้ก็คือ 0-3 , 4-7 , 8-11 , _ _ _ , 252-255 หรือ
192.168.22.0 - 192.168.22.3
192.168.22.4 - 192.168.22.7
192.168.22.8 - 192.168.22.11
   -----------
192.168.22.48 - 192.168.22.51
    ---------
192.168.22.252 - 192.168.22.255
โดย IP Address ตัวแรกของแต่ละ subnet จะเรียกว่า Network IP และ IP Address ตัวสุดท้ายของแต่ละ subnet จะเรียกว่า Broadcast IP ดังนั้น
จากโจทย์ 192.168.22.50/30
1. Network IP คือ IP Address อะไร
ตอบ 192.168.22.48
2. Broadcast IP คือ IP Address อะไร
ตอบ 192.168.22.51
3. Range host IP ที่สามารถนำมาใช้งานได้ หรือ จำนวน host Per Subnet
ตอบ 192.168.22.49 - 192.168.22.50 นำIP มา set เป็น host ได้2 IP
วิธีการหา Network IP นอกเหนือจากการเขียนตามด้านบนแล้วยังหาได้โดย
วิธีการปกติทำได้โดยการนำเอา Subnet Mask มา AND กับ IP Address ที่ให้มา ผลที่ได้จะเป็น Network IP วิธีนี้หนังสือหลายเล่มมีอธิบายแล้ว
วิธีการหาร นำIP จากโจทย์ที่ให้มา ตั้งหารด้วยจำนวน IP ที่มีได้ใน Subnet เช่น 192.168.22.50/30 ให้นำเอาตัวเลข 50 หารด้วย 4 ดังด้านล่าง
เมื่อได้ Netwok IP แล้ว ก็จะได้คำตอบเช่นเดียวกับด้านบน
Ex.2 192 .168.5.33/27 which IP address should be assigned to the PC host ?
A.192.168.5.5
B.192.168.5.32
C. 192.168.5.40
D. 192.168.5.63
E. 192.168.5.75
จากโจทย์ /27 จะหมายถึง 11111111 . 11111111 . 11111111 . 111/XXXX X = mask 27 bit แรก ต้องเป็นเลข 1 ส่วน 5 bit หลัง เป็นอะไรก็ได้  /27 เมื่อแปลงเป็นเลขฐานสิบจะได้ 255 . 255 . 255 . 224  หรือจะคิดแบบลัด ที่ให้เขียนไว้ด้านบนก็ได้ ดูบรรทัดที่ 4 จะหมายถึงผลบวกของ bit ใน 8 bit สุดท้าย
111 ก็คือ 128+64+32 = 224
เมื่อ ได้ Subnet Mask แล้ว เราก็จะรู้ว่ามีจำนวน IP ต่อ Subnet เท่ากับ 32 หรือจะดูจากที่เขียนไว้ด้านบนของ 224 ก็คือ 32 จากโจทย์ 192 .168.5.33/27 จะใช้วิธีไหนก็ได้หาตัว Network มาให้ได้ก่อน
192.168.5.33/27 หมายถึง 192.168.5.32 - 192.168.5.63 โดย IP ตัวแรกจะเป็น Network IP (192.168.5.32 )และ IP ตัวสุดท้ายจะเป็น Broadcast IP ( 192.168.5.63 ) ซึ่งไม่สามารถใช้ setให้แก่ PC ได้ ดังนั้นจะเหลือ IP ที่สามารถ Set ให้แก่PC ได้คือ 192.168.5.33 - 192.168.5.62
คำตอบจึงเป็นข้อ C. 192.168.5.40
Ex.3 IP 10.10.10.0/13 เป็น IP ที่เอาไปใช้งานได้หรือไม่
IP ที่สามารถเอาไปใช้งานได้ จะต้องไม่ตรงกับ Network IP หรือBroadcast IP
วิธีการคิดก่อนอื่นเราต้องทำการแปลง /13 หรือ mask 13 bit ให้เป็น subnet mask 11111111 . 11111/XXX . XXXXXXXX . XXXXXXXX = mask 13 bit แรก ต้องเป็นเลข 1 ส่วน bit ที่เหลือเป็นอะไรก็ได้ /13 เมื่อแปลงเป็นเลขฐานสิบจะได้ 255 . 248 . 0 . 0
จากโจทย์ เขียนใหม่ได้ดังนี้ IP 10.10.10.0 subnet mask 255.248.0.0
ต่อไปเราจะมาหาช่วง IP จาก subnet mask ที่หามาได้ 255.248.0.0 หลักที่ 1 จะมีค่าคงที่คือเลข 10 หลักที่ 3 และหลักที่ 4 นั้น ตัวเลขที่เป็นไปได้คือ 0 - 255 ส่วนหลักที่ 2 นั้น เราต้องมาคำนวณนิดหน่อย ก็เว้นไว้ก่อน เขียนช่วง IP จะได้ดังนี้คือ 10 . X . 0 . 0 - 10 . X . 255 . 255
ถ้าเราพิจารณาเฉพาะ 248 (ดูเฉพาะตัวเลขกลุ่มที่2 ) ถ้าดูจากรูปด้านบน บรรทัดที่3 ซึ่งจะหมายถึง IP ที่มี
ได้ทั้งหมด ก็คือ 8 ตัว คือ 0-7 , 8-15 , 16- 23 , _ _ _ , 248-255 หรือเขียนเต็มๆจะได้
10 . 0 . 0 . 0 - 10 . 7 . 255 . 255
10 . 8 . 0 . 0 - 10 . 15 . 255 . 255  ------------>  จากโจทย์10.10.10.0 จะอยู่ในช่วงนี้
10 . 16 . 0 . 0 - 10 . 23 . 255 . 255
------------
10 . 248 . 0 . 0 - 10 . 255 . 255 . 255
จากโจทย์        10.10.10.0/13 ก็จะคือ IP ในช่วง 10 .8 . 0 . 0 - 10 . 15 . 255 . 255
1. Network IP คือ IP Address อะไร
ตอบ 10 . 8 . 0 . 0
2. Broadcast IP คือ IP Address อะไร
ตอบ 10 . 15 . 255 . 255
3. Range host IP ที่สามารถนำมาใช้งานได้
ตอบ 10 . 8 . 0 . 1 - 10 . 15 . 255 . 254 ดังนั้น IP 10.10.10.0/13 จึงนำมาใช้งานได้
การหาจำนวน Subnet และ จำนวน hosts / Subnet
การหาจำนวน hosts ต่อ Subnet จากค่า Subnet Mask ที่ให้มา จะใช้ สูตร 2n - 2 โดย n คือจำนวน bits ที่อยู่หลังตัวMask ส่วนเลข 2 ที่ลบออกไปคือ Network IP และ Broadcast IP
เช่น /30 11111111 . 11111111 . 11111111 . 111111/00 หรือ 255.255.255.252 จะได้  จำนวน hosts/Subnet = 2n - 2 = 22 - 2 = 4 - 2 = 2
/20 11111111 . 11111111 . 1111/0000 . 00000000 หรือ 255.255.240.0 จำนวน hosts/Subnet = 2n - 2 = 212- 2 = 4096 - 2 = 4094
การหาจำนวน Subnet จากค่า Subnet Mask ที่ให้มา ปัจจุบันใช้สูตร 2n ไม่ต้องลบ 2 เนื่องจากว่า ปัจจุบันทุก Subnet สามารถใช้ได้ทั้งหมด และใน router cisco เองมีการเพิ่ม IP Subnet Zero ไว้อยู่แล้ว
โดย n คือจำนวน bits ที่อยู่หน้าตัวMask ถึงตำแน่ง . (dot) ที่ใกล้ที่สุดหรือตำแหน่งที่ระบุไว้
เช่น /30 11111111 . 11111111 . 11111111 . 111111/00  หรือ 255.255.255.252 จะได้   จำนวน Subnet = 2n = 26 
       /20 11111111 . 11111111 . 1111/0000 . 00000000  หรือ 255.255.240.0  จำนวน Subnet = 2n = 24 = 16
เปลี่ยนจาก /20 เป็น /27 จะได้กี่Subnet อันนี้ระบุMask ต้นทางมาจะได้
11111111 . 11111111 . 1111/1111 . 111/00000  จำนวน Subnet = 2n = 27 = 128
เป็นคำศัพท์ที่ควรรู้
Classful และ Classless
Classful จะสนใจ Class ของ IP เป็นหลักจะไม่สนใจตัว Mask ดูตัวเลข IP ว่าอยู่ Class ไหน เช่น อยู่ Class A ,B หรือ C
Class A ( 0.0.0.0 - 127.255.255.255 )
Class B ( 128.0.0.0 - 191.255.255.255 )
Class C (192.0.0.0 - 223.255.255.255 )
ในการใช้ IP Address ช่วงแรกๆจะเป็นแบบ Classful ซึ่ง Classful จะ มีค่า default subnet mask ดังนี้
A /8 255.0.0.0
B /16 255.255.0.0
C /24 255.255.255.0
ดังนั้นถ้าเราใช้หลักการของ Classful ก็ไม่สามารถแบ่ง Subnet ได้แตกต่างจากค่า Default Subnet Maskตัวอย่าง routing protocols : ที่เป็นแบบ Classful
• RIP Version 1 (RIPv1)
• IGRP
ส่วน Classless จะตรงข้ามกับ Classful คือจะไม่สนใจ Class ของ IP แต่จะสนใจตัว Mask เป็นหลัก อย่างเช่นที่คำนวณตามตัวอย่างที่ผ่านมา โดยจะเป็นไปตามหลักการของ Classless Inter - Domain Routing (CIDR) ดังนั้น ตัวMask จะเป็นอะไรก็ได้บ ไม่สนใจว่า IP อยู่Class ไหน  ตัวอย่าง routing protocols : ที่เป็นแบบ Classless ได้แก่
• RIP Version 2 (RIPv2)
• EIGRP
• OSPF
• IS-IS
Variable Length Subnet Masks ( VLSM )
จากหลักการ เครือข่ายที่เราใช้งานกันอยู่ ไม่จำเป็นจะต้องมีขนาดเท่ากันเสมอไป (ไม่จำเป็นต้องมี ตัว Maskเท่ากัน ) เช่น การเชื่อมต่อแบบจุดต่อจุด (Point-to-Point) ต้องการแค่2 IP ก็เพียงพอ ดังนั้นก็ควร Mask 30 bit ( /30 ) หรือใช้subnet mask เป็น 255.255.255.252 , หรือการเชื่อต่อใน LAN ที่มีเครื่องเพียง 20 เครื่อง ก็ควรmask 27 bit ( /27 ) หรือ ใช้subnet mask เป็น 255.255.255.224 เป็นต้น ดังตัวอย่างในรูปด้านล่าง ใช้หลักการของVLSM จะเห็นว่าแต่ละ subnet จะมีตัว mask ต่างกันตามความเหมาะสม
ประโยชน์ของการใช้ VLSM ยังมีดังนี้
•VLSM จะยอมให้มีการแบ่ง Subnet ได้มากกว่า 1 ครั้งสำหรับแต่ละชุด IP เพื่อให้ได้ขนาด IP ตามที่ต้องการ
•VLSM จะช่วยลดจำนวนการจัดสรร IP ลง เป็นการใช้งาน IP อย่างมีประสิทธิภาพ
•VLSM ยังช่วยให้ Router ทำงานได้เร็วขึ้นเนื่องจากขนาดของ Routing Table เล็กลง
ตัวอย่างการทำ VLSM
จากรูปด้านบนถ้ากำหนด IP มาให้ เป็น 192.168.55.0 /24 ให้ทำการแบ่ง จำนวน host ให้เหมาะสมกับแต่ละวงโดยการทำ VLSM จะได้ดังนี้
              เมื่อดูตามค่าของ IP ที่ให้มาจะเห็นว่า ไอพีจะเริ่มตั้งแต่192.168.55.0 ไปจนถึง 192.168.55.255 หรือ จาก 0-255 ตัว โดยใช้เรื่องของ subnet มาช่วยจะได้ดังนี้
             วงที่ 1 ต้องการ 7 hosts จะได้Mask ที่ต้องการคือMask 28 IP ที่ใช้งานได้เริ่มตั้งแต่ 192.168.55.0 ถึง 192.168.55.15 IP ที่เหลือที่ยังไม่ได้ใช้คือ 16-255
                 วงที่ 2 ต้องการ 2 hosts จะได้Mask ที่ต้องการคือMask 30 IP ที่ใช้งานได้เริ่มตั้งแต่ 192.168.55.16 ถึง 192.168.55.19 IP ที่เหลือที่ยังไม่ได้ใช้คือ 20-255
               วงที่ 3 ต้องการ 90 hosts จะได้Mask ที่ต้องการคือMask 25 วงที่ได้จะมี0-127 และ 128-255 IP ที่ใช้งานไปแล้วคือ 0-19 ดังนั้น IP ที่ใช้งานได้คือตั้งแต่192.168.55.128 ถึง 192.168.55.255 IP ที่เหลือที่ยังไม่ได้ใช้คือ 20-128
                 วงที่ 4 ต้องการ 2 hosts จะได้Mask ที่ต้องการคือMask 30 IP ที่ใช้งานได้เริ่มตั้งแต่ 192.168.55.20 ถึง 192.168.55.23 IP ที่เหลือที่ยังไม่ได้ใช้คือ 24-127
               วงที่ 5 ต้องการ 23 hosts จะได้Mask ที่ต้องการคือMask 27 วงที่ได้จะมี0-31และ 32-63 IP ที่ใช้งานไปแล้วคือ 0-23 จะแห็นได้ว่าวง 0-31 นั้นไม่พอเนื่องจากมีการใช้งานไปแล้ว ดังนั้นจึงต้องมาใช้วง 32-63 แทน IP ที่ใช้งานได้จึงเริ่มตั้งแต่ 192.168.55.32 ถึง 192.168.55.63
                 แค่นี้ก็สามารถที่จะจัดระบบของจำนวนไอพีให้แก่ network ในวงแต่ละวงได้อย่างเหมาะสมโดยใช้หลักการของ VLSM
Summarization
                  Summarization คือการรวม IP หลายๆ networks ให้เหลือ network เดียว โดย จะต้องครอบคลุม IP หลายๆ networks นั้นด้วย เช่น ตามรูปด้านล่าง
จากรูปที่ 3.16 วิธีการหา Summarization ทำได้โดยการแปลง IP เป็นฐานสองทั้งหมด แล้วดูเฉพาะตัวเลขที่เหมือนกันสิ้นสุดที่ไหน ก็จะทำการmask ตรงนั้น
             172.1.4.0/25 10101100 . 00000001 . 00000100 . 00000000
             172.1.5.0/24 10101100 . 00000001 . 00000101 . 00000000
             172.1.6.0/24 10101100 . 00000001 . 00000110 . 00000000
             172.1.7.0/24 10101100 . 00000001 . 00000111 . 00000000
             172.1.4.128/25 10101100 . 00000001 . 00000100 . 10000000
             ดังนั้นจาก networks ทั้งหมดจะเห็นว่า ตัวเลขที่เหมือนกันจะสิ้นสุดที่bits ที่ 22 ดังนั้นจ ะmask 22 bits ( /22 ) ก็จะได้Summarization เป็น 172.1.4.0/22หรือ ถ้าสามารถ คำนวณ IP ได้เร็วก็ไม่ต้องแปลง IP เป็นฐานสองก็ได้ โดยใช้วิธีสังเกตุจะเห็นว่า ตัวเลขจะเหมือนกันใน 2 หลักแรกอยู่แล้ว มีหลักที่สาม ที่แตกต่างกันคือตัวเลข 4 ,5 ,6 และ 7 ซึ่งมี4 ตัว คือ 4-7 ก็จะได้คำตอบ 172.1.4.0/22 เช่นกัน
IPv6
            IPv6 หรือ IP version 6 เป็นรูปแบบ IP ชุดใหม่ที่มีการพัฒนามาจาก IPv4 โดยจะใช้การส่งข้อมูลเป็น 128 bit และจะใช้เลขฐาน 16 จำนวน 8 กลุ่ม เป็นเกณฑ์หลัก ( FFFF . FFFF . FFFF . FFFF. FFFF . FFFF . FFFF . FFFF) ตัวอย่างเลข IPv6 เช่น 2301 : 0000 : 130F : 0000 : 0000 : 09C0 : 876A : 130B เป็นต้น IPv6 นั้นสามารถเขียนแบบย่อตัวเลขโดยมีหลักเกณฑ์ดังนี้
                      ·       มีเลข 0 อยู่ในแถว 4 ตัว ติดกันสามารถยุบให้เหลือเพียงแค่ตัวเดียว: 0000 = : 00
                             ·       มีเลข 0 อยู่หน้าแถวของจำนวนกลุ่ม สามารถยุบให้เหลือเพียงแค่ตัวเลขเพียงอย่างเดียวโดยไม่ต้องเขียนเลข 0 : 0978 = : 978
                      ·       มีเลข 0 อยู่ในแถวติดกันสองกลุ่มขึ้นไปสามารยุบ จำนวนกลุ่มนั้นๆ แล้วใส่แค่เพียงเครื่องหมาย :: แทนได้เช่น 0000:0000:0000 = :: แต่จะมี:: ได้แค่ที่เดียวในตัวเลข IPv6 และจะต้องไม่อยู่ท้ายสุด
           จากหลักเกณฑ์ดังกล่าว สามารถเขียน IPv6 จาก 123C : 0456 : 0000 : 87FD : 0000 : 0000 : CCA2 : 34E2เขียนใหม่เป็น 123C : 456 : 0 : 87FD : : CCA2 : 34E2 การแปลงเลข IPv4 เป็น IPv6 สามารถทำได้ดังนี้
IP 192 . 168 . 1 .1   ---->     : : 192 . 168 . 1 . 1
           หมายเหตุ เลขฐาน 16 นั้นจะเริ่มนับตั้งแต่ 0 1 2 3 4 5 6 7 8 9 A B C D E F ดังนั้นถ้าเราต้องการจะแปลงเป็นเลขฐาน 10 ก็สามารถทำได้ดังนี้ เช่น เลขฐาน16 = 09C0 นำมาแปลงเป็นเลขฐาน 10 จะได้
( 0 x 16 x 16 x 16 ) + ( 9 x 16 x 16 ) + ( 13 x 16 ) + ( 0 x 16 ) = 2512
IPv6 แบ่งออกเป็น 3 ประเภท คือ
·       Unicast จะเป็นการส่งข้อมูล แบบตัวต่อตัวโดยเลือกเป็นคู่ ๆ เฉพาะเจาะจง
·       Multicast จะเป็นการส่งข้อมูลแบบทั่วถึง โดยการส่งหาทุกตัวในกลุ่ม
·       Anycast จะเป็นการส่งข้อมูล แบบสุ่มเลือกหรือ คัดสรร ตัวที่ต้องการจะส่งให้เท่านั้น โดย Anycast จะเป็นส่วนหนึ่งของMulticast IPv6 จะไม่มีการ broadcast
ตัวอย่าง IPv6 ที่ควรรู้
·       0:0:0:0:0:0:0:0 เปรียบเทียบกับ IPv4 จะได้ 0.0.0.0 เหมาะสำหรับการทำ stateful configuration.
·       0:0:0:0:0:0:0:1   ---->    ::1 เปรียบได้กับ 127.0.0.1 ใน IPv4
·       0:0:0:0:0:0:192.168.100.1    ---->  IPv6/IPv4 network environment.
·       2000::/3     ---->   The global unicast address range.
·       FC00::/7    ---->   The unique local unicast range.
·       FE80::/10    ---->  The link-local unicast range.
·       FF00::/8      ----> The multicast range.
·       3FFF:FFFF::/32   ----> Reserved for examples and documentation.
·       2001:0DB8::/32   ---->  Also reserved for examples and documentation.
·       2002::/16    ----> Used with 6to4, which is the transition system

ที่มา  
http://www.ipv6.nectec.or.th/faq.php
http://comerror.com/ip-address.html
http://home.kku.ac.th/hslib/


 

ไม่มีความคิดเห็น:

แสดงความคิดเห็น