วันเสาร์ที่ 27 สิงหาคม พ.ศ. 2554

Subnet mask คืออะไร


Subnet mask คือ
Subnet mask เป็น Parameter อีกตัวหนึ่งที่ต้องระบุควบคู่กับหมายเลข IP Address หน้าทีของ subnet คือ ตัวที่แบ่ง IP address ที่ได้มาให้เป็นกลุ่มย่อย ช่วยในการแยกแยะว่าส่วนใดภายในหมายเลข IP Address เป็น Network Address และส่วนใดเป็นหมายเลข Host Address ดังนั้น ท่านจะสังเกตได้ว่า เมื่อเราระบุ IP Address ให้กับเครื่องคอมพิวเตอร์์ เราจำเป็นต้องระบุ Subnet mask ลงไปด้วยทุกครั้งDefault Subnet mask ของแต่ล่ะ Class ดั้งนี้
• Class A จะมี Subnet mask เป็น 255.0.0.0 หรือเลขฐานสองดัง้นี้
11111111.00000000.00000000.00000000
(
รวมเลข 1 ให้หมด ก็จะได้เท่ากับ 255)
• Class B จะมี Subnet mask เป็น 255.255.0.0 หรือเลขฐานสองดัง้นี้
11111111.11111111.00000000.00000000
• Class C จะมี Subnet mask เป็น 255.255.255.0 หรือเลขฐานสองดัง้นี้
11111111.11111111.11111111.00000000
"ตำแหน่งของ Bit ไหน ในหมายเลข IP Address ที่ถูกกันไว้ให้เป็น Network Address หรือ Subnet Address จะมีค่าของ Bit ตำแหน่งที่ตรงกันใน Subnet mask เป็น 1 เสมอ"
หลักการพื้นฐานของการทำ Subnet
หลักการทำงานมีอยู่ว่า เราจะต้องยืม bitในตำแหน่งที่แต่เดิมเคยเป็น Host Address มาใช้เป็น Sub-network Address ด้วยการแก้ไขค่า Subnet mask ให้เป็นค่าใหม่ที่เหมาะสม
สูตรการคำนวณ  2 ยกกำลัง n  - 2 = ??
การวางแผน คำนวณ Subnet
1. หาจำนวน Segment ทั้งหมดที่ต้องการ Subnet address   จำนวนใน Segment ในที่นี้ นับจำนวน network ที่อยุ่ในแต่ล่ะฝั่งอขง Router หรือของ switch Layer 3 หรือ หากมีการ implement VLAN จะนับจำนวนของ VLANก็ได้

2. 
จำนวนเครื่อง computer ทั้งหมดในแต่ล่ะ Segment (ในที่นี้เราสมมุติ ว่าจำนวนเครืื่อง มีจำนวนใกล้เคียงกัน)
3. หาจำนวน bit ที่จะต้องยืมมาใช้เป็น Subnet Address โดยพิจารณาจาก ข้อ. และ ข้อ.2 โดยอาศัยสูตรง่าย ๆ
ถ้ายืมมาจำนวน x bit แล้ว ถ้านำเอา 2 มายกกำลังด้วย x แล้ว หักลบออกอีก 2 แล้วได้ค่ามากกว่า หรือ เท่ากับจำนวน
Subnet address 
ที่เราต้องการ
ขั้นต่อมา  ก้ต้องนำ bit ที่เหลือจากการยืมมา เข้าสูตรเดิมคือ  2 ยกกำลัง n -2 = ??
4. นำ subnet mask ที่ได้มาคำนวณร่วมกับหมายเลข Network Address เดิมเพื่อหา Subnet Address ทั้งหมดที่เป็นไปได้ เพื่อที่จะนำไปกำหนดให้กับ Network แต่ล่ะ Segment

5. 
คำนวณหมายเลข IP Address ที่เป็นไปได้ทั้งหมดในแต่ล่ะ Subnet แล้วนำไป กำหนดให้กับเครื่อง computer เครื่อง server  และแต่ล่ะ interface ของ router จนครบ


อ่าคับ คือถ้าสมมุติเราได้ IP ที่มีชุดหมายเลข Network เป็น 20.0.0.0 ซึ่งทางเทคนิคจะเห็นว่าเป็นหมายเลข IP Class A
ที่เป็น Private IP Address สามารถกำหนดให้เครื่อง ได้ตั้งแต่หมายเลข 20.0.0.1 - 20.255.255.254 โดยมีหมายเลข Network เป็น 20.0.0.0 และหมายเลข Broadcast เป็น
20.255.255.255 
แล้วถ้าเรานำมาใช้จริงก็จะเห็นว่ามันจะเห็นกันทั้งหมดเพราะว่า มันอยู่ใน network เดียวกัน เพราะฉะนั้นเวลาเราจะทำ subnet เราก็แบ่งไปตามที่เราต้องการเช่น
เราอยากให้ byte ที่ 2 เป็นแผนก byte ที่ 3 เป็นหน่วยในแผนก (อันที่แบ่งผมมั่วๆนะคับ)ประโยชน์ของ subnet ก็คือเผื่อทำให้การบริหารจัดการมีประสิทธิภาพและเพื่อประโยชน์
ในด้านระบบความปลอดภัยของข้อมูล
NAT เป็นการแก้ปัญหาจากการที่อินเตอร์เนตมีการขยายตัวอย่างรวดเร็ว ทำให้ IP ไม่เพียงพอต่อการใช้งาน โดย NAT สามารถแปลง IP หลายๆ ตัวที่ใช้ภายในเครือข่ายให้ติดต่อกับเครือข่ายอื่นโดยใช้ IP เดียวกัน ซึ่งวิธีการทำงานก็คือ
เมื่อมีการเริ่มทำงาน มันจะสร้างตารางไว้เก็บข้อมูล IP address ของเครื่องในเครือข่ายภายในที่ส่ง packet ผ่าน NAT device และจากนั้นมันก็จะสร้างตารางไว้เก็บข้อมูลหมายเลขพอร์ต ที่ถูกใช้ไปโดย outside IP address เมื่อมีการส่ง packet จากเครือข่ายภายในไปยังเครือข่ายภายนอก NAT device จะมีกระบวนการทำงานคือ
1. มันจะบันทึกข้อมูล source IP adress และ source port number ไว้ในตารางที่เกี่ยวข้อง
2. 
มันจะแทนที่ IP ของ packet ด้วย IP ขาออกของ NAT device เอง (ในที่นี้คือ 203.154.207.76)
3. 
มันจะ assign หมายเลขพอร์ตใหม่ให้กับ packet และบันทึกค่าพอร์ตนี้ไว้ในตาราง และกำหนดค่านี้ลงไปใน source port number ของ packet นั้น
4. 
จากนั้นจะคำนวณหา IP, TCP checksum อีกครั้งเพื่อตรวจสอบความถูกต้อง
และเมื่อ NAT device ได้รับ packet ย้อนกลับมาจาก external network มันจะตรวจสอบ destination port number ของ packet นั้นๆ แล้วนำมาเปรียบเทียบกับข้อมูล source port number ในตารางที่บรรจุข้อมูลไว้ ถ้าเจอข้อมูลที่ตรงกันมันก็จะเขียนทับ destination port number, destination IP address ของ pakcet นั้นๆ แล้วจึงส่ง packet นั้นไปยังเครื่องอยู่ภายในเครือข่ายภายในที่เป็นผู้สร้าง packet นี้ขึ้นมาในครั้งแรก

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

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