ทำไมถึงใช้ IP ตัวแรกกับตัวสุดท้ายใน CIDR ไม่ได้
หลายคนที่เพิ่งเริ่มเรียนรู้เรื่อง networking หรือพวก CIDR (Classless Inter-Domain Routing) อาจจะสงสัยว่า ทำไมในช่วง IP ตั้ง N ตัว ถึงใช้ได้จริงแค่ N-2 ตัวเอง คำตอบมันอยู่ที่ IP ตัวแรกกับตัวสุดท้ายในช่วงนี่แหละ มาดูกันว่าเพราะอะไรถึงใช้สองตัวนี้ไม่ได้
มารู้จัก CIDR กันก่อน
CIDR หรือ Classless Inter-Domain Routing เป็นวิธีแบ่ง subnet ในระบบ network เราใช้ CIDR เพื่อกำหนดว่า network หนึ่ง ๆ มี IP ได้กี่ตัว เช่น
10.88.135.144/26
เลข /26 หมายถึง มี IP ได้ทั้งหมด 64 ตัว (เพราะ 2^(32-26) = 64) แต่แท้จริงแล้วมันใช้ได้แค่ 64-2 = 62 IP เท่านั้น เพราะว่า
- IP ตัวแรก (Base IP): จะถูกใช้เป็น Network Address คือเอาไว้บอกว่า นี่คือกลุ่ม network นะ ไม่ใช่ IP เครื่องใดเครื่องหนึ่ง อย่างในกรณีนี้คืิอ
10.88.135.128/26
เพราะว่าระบบจะหา subnet ที่ ครอบคลุม IP 144 อยู่ ซึ่งมันก็คือช่วง 128–191 (64 IP) นั่นหมายความว่า Network Address จริง ๆ คือ10.88.135.128
เพราะมันเป็นจุดเริ่มต้นของ subnet ที่10.88.135.144
อยู่ในช่วงนั้น - IP ตัวสุดท้าย (Broadcast IP): จะถูกใช้เป็น Broadcast Address ซึ่งเอาไว้ส่งข้อมูลไปยังทุกเครื่องใน subnet นี้ ซึ่งจำเป็นสำหรับการสื่อสารหลายแบบ เช่น DHCP, ARP จากเหตุผลเดียวกันกับข้อที่แล้ว ตัว Broadcast IP จะมีค่า
10.88.135.191
เพราะมันเป็นตัวสุดท้ายของ subnet ที่10.88.135.144
อยู่ในช่วงนั้น
(เสริม) Network Address คืออะไร
เวลาที่ระบบ networking (เช่น router หรือ switch) ทำงาน มันต้องรู้ว่า IP ไหนอยู่ใน network ไหน เพื่อจะสามารถส่งข้อมูลไปให้ถูก subnet
สมมุติว่าเครื่อง A จะส่งข้อมูลไปหาเครื่อง B ระบบต้อง check ว่า A กับ B อยู่ subnet เดียวกันมั้ย
ถ้าอยู่ subnet เดียวกัน -> ส่งตรง ๆ ได้เลย
ถ้าอยู่คนละ subnet -> ส่งไปหา gateway/router แทน
และการ check ว่าอยู่ subnet เดียวกันไหม ก็ต้องใช้ Network Address นี่แหละ ถ้าเราไปใช้ Network Address กับเครื่องจริง ๆ ระบบอื่น ๆ จะ คิดว่าเราหมายถึง subnet ทั้งก้อน อาจทำให้การ routing หรือ firewall rules สับสนได้
เหมือนกับเราไม่สามารถใช้คำว่า “หมู่บ้าน A” เป็นชื่อของบ้านหลังใดหลังหนึ่งในหมู่บ้านได้
สรุป
ดังนั้นจำนวน IP ที่เอาไว้ใช้กับเครื่องต่าง ๆ คือ N-2 ตัว เพราะต้องเอา IP ตัวแรกและตัวสุดท้ายไปใช้ในการรับ-ส่งข้อมูลให้ถูกวง network นั่นเอง