วิธีการคำนวณซับเน็ตมาสก์บน Linux ด้วย ipcalc

เผยแพร่แล้ว: 2022-08-28
แล็ปท็อปบนพื้นหลังสีน้ำเงินแสดงพรอมต์คำสั่ง Linux
fatmawati achmad zaenuri/Shutterstock.com

ซับเน็ตเครือข่ายขนาดใหญ่ช่วยเพิ่มความปลอดภัย เพิ่มประสิทธิภาพ และจัดระเบียบเครือข่ายของคุณอย่างมีเหตุผล แต่การคำนวณบางอย่างก็ยาก คำสั่ง Linux ipcalc ทำให้ขั้นตอนการวางแผนเป็นเรื่องง่าย

ซับเน็ตคืออะไร?

Subnetting เป็นวิธีการแบ่งเครือข่ายขนาดใหญ่ออกเป็นชิ้นเล็ก ๆ ที่เชื่อมต่อกัน แต่ละชิ้นเรียกว่าซับเน็ต คุณอาจเลือกที่จะจัดระเบียบเครือข่ายของคุณเพื่อให้ทีมขายของคุณใช้เครือข่ายย่อยหนึ่ง ฝ่ายทรัพยากรบุคคลใช้เครือข่ายย่อยอื่น ฝ่ายสนับสนุนลูกค้าใช้เครือข่ายย่อยอื่น เป็นต้น

Subnets คืออะไรและส่งผลต่อเครือข่ายของฉันอย่างไร
ที่เกี่ยวข้อง ซับเน็ตคืออะไร และส่งผลต่อเครือข่ายของฉันอย่างไร

มีประโยชน์อย่างมากในเรื่องนี้ ประการแรกเกี่ยวข้องกับการรักษาความปลอดภัยและการควบคุม หากไม่มีซับเน็ต ทุกอย่างเป็นเครือข่าย "แบน" ขนาดใหญ่ ด้วยเครือข่ายย่อย คุณสามารถตัดสินใจได้ว่าเครือข่ายย่อยใดสามารถพูดคุยกับเครือข่ายย่อยอื่นๆ ได้ ซับเน็ตที่แตกต่างกันมีช่วงที่อยู่ IP ที่แตกต่างกัน และใช้ซับเน็ตมาสก์ที่แตกต่างกัน ซึ่งเราจะพูดถึงในอีกสักครู่

เราเตอร์ของคุณต้องได้รับการกำหนดค่าให้อนุญาตการรับส่งข้อมูลจากเครือข่ายย่อยหนึ่งไปยังเครือข่ายย่อยอื่น และเนื่องจากเราเตอร์เป็นอุปกรณ์ที่มีการจัดการ ซึ่งช่วยให้คุณควบคุมประเภทของการรับส่งข้อมูลและการโต้ตอบที่อนุญาตระหว่างเครือข่ายย่อยต่างๆ

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

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

และแน่นอน เมื่อเครือข่ายของคุณถูกแบ่งส่วนแล้ว พนักงานไอทีของคุณจะเข้าใจ บำรุงรักษา และสนับสนุนโครงสร้างพื้นฐานได้ง่ายขึ้น

ที่อยู่ IP และซับเน็ตมาสก์

ทั้งหมดนี้ฟังดูดีและเป็นเช่นนั้น แต่มันหมายความว่าเราต้องมีความเฉพาะเจาะจงมากในการกำหนดที่อยู่ IP ของเรา เราจำเป็นต้องใช้ส่วนหนึ่งของที่อยู่ IP สำหรับรหัสเครือข่าย และส่วนหนึ่งของที่อยู่ IP สำหรับการกำหนดที่อยู่อุปกรณ์ สำหรับซับเน็ต เราจำเป็นต้องใช้ส่วนหนึ่งของที่อยู่ IP สำหรับซับเน็ตด้วย

วิธีใช้คำสั่ง ip บน Linux
วิธีใช้คำสั่ง ip บน Linux

ที่อยู่ IPv4 IP ใช้ตัวเลขสามหลักสี่ตัวคั่นด้วยจุด เรียกว่าสัญกรณ์จุดทศนิยม ช่วงของตัวเลขเหล่านี้คือ 0 ถึง 255 ตัวเลขสองตัวแรกคือรหัสเครือข่าย หมายเลขที่สามใช้สำหรับเก็บ ID ซับเน็ต และหมายเลขที่สี่ใช้สำหรับเก็บที่อยู่อุปกรณ์ นั่นในกรณีง่ายๆ

ตัวเลขจะแสดงในคอมพิวเตอร์เป็นลำดับของค่าไบนารี หากมีอุปกรณ์ในเครือข่ายย่อยน้อยจนมีบิตสูงที่ไม่ได้ใช้ในช่วงหมายเลขที่อยู่ของอุปกรณ์ เลขฐานสอง "สำรอง" เหล่านี้สามารถใช้โดย subnet ID

เราเตอร์หรืออุปกรณ์เครือข่ายอื่น ๆ รู้ได้อย่างไรว่าองค์ประกอบของที่อยู่ IP คืออะไร? อะไรบ่งชี้ว่า subnet ID นั้นมีอยู่ในหมายเลขที่สามทั้งหมดหรือถ้ามันเจาะบิตสูงของตัวเลขที่สี่ คำตอบคือซับเน็ตมาสก์

ซับเน็ตมาสก์ดูเหมือนที่อยู่ IP เป็นตัวเลขสามหลักสี่ตัว และช่วงของตัวเลขอยู่ระหว่าง 0 ถึง 255 แต่จำเป็นต้องคำนึงถึงในรูปแบบเลขฐานสอง

ทุกบิตไบนารีที่เป็น 1 ในซับเน็ตมาสก์หมายถึงบิตที่สอดคล้องกันในที่อยู่ IP หมายถึงรหัสเครือข่ายหรือรหัสซับเน็ต ทุกอย่างที่เป็นศูนย์ในซับเน็ตมาสก์หมายถึงบิตที่สอดคล้องกันในที่อยู่ IP หมายถึงที่อยู่อุปกรณ์

ลองใช้ที่อยู่ IP ทั่วไปและใช้ซับเน็ตมาสก์กับมัน ซับเน็ตมาสก์มี 255 สำหรับแต่ละตัวเลขสามตัวแรก และ 0 สำหรับตัวเลขที่สี่

  • IP address : 192.168.1.0
  • ซับเน็ตมาสก์ : 255.255.255.0 = 11111111.11111111.11111111.00000000

ในไบนารี 255 คือ 11111111 หากตั้งค่าบิตซับเน็ตมาสก์เป็นหนึ่งบิต บิตที่สอดคล้องกันในที่อยู่ IP จะอ้างอิงถึง ID เครือข่ายและ ID ซับเน็ต 255 ในซับเน็ตมาสก์หมายถึงบิตทั้งหมดในหมายเลขที่เกี่ยวข้องในที่อยู่ IP อ้างอิงถึง ID เครือข่ายหรือ ID ซับเน็ต

ตัวเลขที่สี่คือศูนย์ หมายความว่าไม่มีบิตใดถูกตั้งค่าเป็นหนึ่ง ดังนั้นหมายเลขดังกล่าวจึงหมายถึงที่อยู่อุปกรณ์เครือข่าย ดังนั้นซับเน็ตมาสก์ของเราที่ 255.255.255.0 หมายความว่าตัวเลขสามตัวแรกของที่อยู่ IP มีรหัสเครือข่ายและรหัสซับเน็ต และหมายเลขสุดท้ายสงวนไว้สำหรับที่อยู่อุปกรณ์เครือข่าย

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

การเปลี่ยนซับเน็ตมาสก์มีผลอย่างมากต่อเครือข่าย นั่นเป็นเหตุผลที่เราต้องทำให้ถูกต้อง

คำสั่ง ipcalc

ipcalc ทำให้ง่ายต่อการค้นหาว่าซับเน็ตมาสก์และที่อยู่ IP ใดที่จำเป็นสำหรับซับเน็ตเครือข่ายของคุณอย่างถูกต้อง ipcalc ได้รับการติดตั้งบน Fedora 36 แล้ว เราต้องติดตั้งบน Ubuntu 22.04 และ Manjaro 21

คำสั่งสำหรับ Ubuntu คือ:

 sudo apt ติดตั้ง ipcalc 

การติดตั้ง ipcalc บน Ubuntu

ในการติดตั้ง ipcalc บน Manjaro ให้ใช้:

 sudo pacman -Sy ipcalc 

ติดตั้ง ipcalc บน Manjaro

อย่างน้อยที่สุด เราต้องส่งที่อยู่ IP ไปยัง ipcalc หากนั่นคือทั้งหมดที่เราผ่าน ipcalc จะถือว่าซับเน็ตมาสก์เป็น 255.255.255.0 ให้การอ่านข้อมูลเกี่ยวกับเครือข่ายและที่อยู่ IP

 ipcalc 192.168.1.0 

ผลลัพธ์จาก ipcalc ตรวจสอบที่อยู่ IP

ผลลัพธ์ประกอบด้วยค่าจุดทศนิยมและค่าไบนารีที่เทียบเท่ากัน นี่คือความหมายของข้อมูลแต่ละบิต

  • ที่อยู่ : 192.168.1.0. ที่อยู่ IP ที่เราให้ไว้
  • Netmask : 255.255.255.0 = 24. ซับเน็ตมาสก์ 255.255.255.0 จะใช้หากไม่มีซับเน็ตมาสก์ในบรรทัดคำสั่ง 24 หมายถึงมี 24 บิตตั้งค่าเป็น 1 ในซับเน็ตมาสก์ สิ่งเหล่านี้ใช้สำหรับ ID เครือข่ายและ ID ซับเน็ต เหล่านี้นับจากด้านซ้าย บิตที่ตั้งค่าเป็น 1 จะเป็นลำดับต่อเนื่องของ 1 ไม่สามารถมี 0 บิตใด ๆ ในหมู่พวกเขา เรารู้ว่า 8 บิตที่ตั้งค่าเป็น 1 ในไบนารีทำให้เรามี 255 เป็นทศนิยม ดังนั้น 24 หมายถึง 8 บิตสามชุดทั้งหมดตั้งค่าเป็น 1 ในจุดทศนิยมที่ให้ 255.255.255 แก่เรา บิตที่เหลือจะเป็น 0 ให้เรา 255.255.255.0 ดังนั้นโดยการนับบิตที่ตั้งค่าเป็น 1 และแสดงเป็นตัวเลขทศนิยม เช่น 24 เราสามารถถ่ายทอดซับเน็ตมาสก์ทั้งหมดได้ สิ่งนี้เรียกว่าสัญกรณ์การกำหนดเส้นทางระหว่างโดเมนแบบไม่มีคลาส
  • ไวด์การ์ด : 0.0.0.255. ใช้ในอุปกรณ์เครือข่ายของ Cisco โดยเป็นส่วนหนึ่งของการตั้งค่ารายการที่อนุญาต/รายการบล็อก
  • เครือข่าย : 192.168.1.0/24. นี่คือที่อยู่ IP ของเครือข่ายและซับเน็ตที่อธิบายไว้ในรูปแบบ CIDR หากมีเราเตอร์เชื่อมต่อกับซับเน็ตนี้ มักจะได้รับการจัดสรรที่อยู่ IP ต่ำสุดในช่วงที่อนุญาต
  • HostMin : 192.168.1.1. ที่อยู่ IP ต่ำสุดที่อุปกรณ์เชื่อมต่อกับเครือข่ายย่อยนี้สามารถมีได้
  • HostMax : 192.168.1.254. ที่อยู่ IP สูงสุดที่อุปกรณ์เชื่อมต่อกับเครือข่ายย่อยนี้สามารถมีได้
  • ออกอากาศ : 192.168.1.255. นี่คือที่อยู่ออกอากาศ แพ็กเก็ตเครือข่ายที่ส่งไปยังที่อยู่ IP นี้จะถูกสะท้อนไปยังอุปกรณ์ทั้งหมดในซับเน็ต
  • โฮสต์/เน็ต : 254. จำนวนอุปกรณ์สูงสุดที่คุณสามารถเชื่อมต่อกับซับเน็ตนี้ได้ ในตัวอย่างนี้ ช่วงที่อยู่ IP ของอุปกรณ์ของเราคือ 0 ถึง 255 ซึ่งหมายความว่าเราสามารถระบุที่อยู่ IP ที่แตกต่างกัน 256 รายการ (0 ถึง 255) แต่เราสูญเสียที่อยู่ IP หนึ่งรายการสำหรับที่อยู่ IP ของเครือข่าย (ที่อยู่ ".0") และเราสูญเสียที่อยู่ IP สำหรับการออกอากาศ (ที่อยู่ ".255")
  • คลาส C, อินเทอร์เน็ตส่วนตัว : คลาส ของเครือข่าย

คลาส ของเครือข่ายระบุด้วยจำนวนบิตที่ใช้สำหรับ ID เครือข่ายและ ID ซับเน็ต บวกกับอีกสองสามบิตที่ใช้เพื่อบรรจุคลาสของเครือข่าย เรียกว่า บิตชั้นนำ

  • คลาส A : บิตนำหน้า 0 ที่อยู่ IP เริ่มต้นด้วย 0 ซับเน็ตเริ่มต้น: 255.0.0.0 สัญกรณ์ CIDR คือ /8
  • คลาส B : บิตนำหน้า 10. IP แอดเดรสเริ่มต้นด้วย 128 ซับเน็ตเริ่มต้น: 255.255.0.0 สัญกรณ์ CIDR คือ /16
  • คลาส C : บิตนำหน้า 110 ที่อยู่ IP เริ่มต้นด้วย 192 ซับเน็ตเริ่มต้น: 255.255.255.0 สัญกรณ์ CIDR คือ /24
  • คลาส D : บิตนำหน้า 1110 ที่อยู่ IP เริ่มต้นด้วย 224 ซับเน็ตเริ่มต้น: ไม่ได้กำหนด สัญกรณ์ CIDR คือ /4

การเปลี่ยนซับเน็ตมาสก์

คำสั่ง ipcalc ไม่สามารถเปลี่ยนการตั้งค่าใดๆ ได้ ดังนั้นเราสามารถลองอะไรก็ได้ที่เราต้องการโดยไม่ต้องกลัวว่าจะมีผลกระทบใดๆ มาดูกันว่าการเปลี่ยนซับเน็ตมาสก์มีผลอย่างไรกับเครือข่ายของเรา

คุณสามารถใช้ CIDR หรือสัญกรณ์จุดทศนิยม CIDR จะเว้นวรรคหรือไม่ก็ได้ คำสั่งเหล่านี้เทียบเท่ากันทั้งหมด

 ipcalc 192.168.1.0/16
 ipcalc 192.168.1.0 /16
 ipcalc 192.168.1.0 255.255.0.0 

ผลลัพธ์จากการขอให้ ipcalc ใช้ซับเน็ตมาสก์ใหม่กับที่อยู่ IP

สิ่งนี้จะเพิ่มจำนวนอุปกรณ์ที่คุณสามารถเชื่อมต่อกับเครือข่ายนั้นได้อย่างมาก การกำหนดแอดเดรสของอุปกรณ์เครือข่ายสำหรับเครือข่ายนี้เริ่มต้นที่ 192.168.0.0 และสิ้นสุดที่ 192.168.255.254

เราสูญเสียที่อยู่หนึ่งรายการสำหรับที่อยู่เครือข่ายและอีกรายการหนึ่งสำหรับที่อยู่ออกอากาศเหมือนเมื่อก่อน แต่นั่นยังคงทำให้เรามีอุปกรณ์ที่เป็นไปได้ 65,534 เครื่อง

แต่พวกเขาทั้งหมดจะยังคงอยู่ในเครือข่ายย่อยเดียว

การใช้ ipcalc กับซับเน็ต

สมมติว่าเราต้องการเพิ่มเครือข่ายย่อยสามเครือข่ายในเครือข่ายของเรา โดยมีความจุสำหรับ 20, 15 และ 80 โฮสต์ตามลำดับ เราสามารถใช้ตัวเลือก -s (แยก) และตามด้วยขนาดเครือข่ายย่อยที่ต้องการ

 ipcalc 192.168.1.0 -s 20 15 80 

คำสั่งให้ ipcalc แบ่งเครือข่ายออกเป็นสามเครือข่ายย่อย

ส่วนแรกเหมือนกับที่เราได้เห็นก่อนหน้านี้ โดยที่ ipcalc ให้การวิเคราะห์เครือข่ายที่มีที่อยู่ IP ที่เราให้ไว้ในบรรทัดคำสั่ง ซับเน็ตของเราได้อธิบายไว้ในสามส่วนต่อไปนี้

คำแนะนำของ ipcalc สำหรับการแยกเครือข่ายออกเป็นสามเครือข่ายย่อย

โดยสรุปข้อมูลที่เราได้รับคือ:

ซับเน็ตแรก:

  • ซับเน็ตมาสก์: 255.255.255.224
  • ที่อยู่อุปกรณ์แรก: 192.168.0.129
  • ที่อยู่อุปกรณ์ล่าสุด: 192.168.0.158
  • ความจุซับเน็ต: 30 เครื่อง

ซับเน็ตที่สอง:

  • ซับเน็ตมาสก์: 255.255.255.224
  • ที่อยู่อุปกรณ์แรก: 192.168.0.161
  • ที่อยู่อุปกรณ์ล่าสุด: 192.168.0.190
  • ความจุซับเน็ต: 30 เครื่อง

ซับเน็ตที่สาม:

  • ซับเน็ตมาสก์: 255.255.255.128
  • ที่อยู่อุปกรณ์แรก: 192.168.0.1
  • ที่อยู่อุปกรณ์ล่าสุด: 192.168.0.126
  • ความจุซับเน็ต: 126 อุปกรณ์

สังเกตรายการสีเขียวในค่าไบนารี นี่คือบิตที่สงวนไว้สำหรับซับเน็ต

นอกจากนี้ โปรดทราบว่าเนื่องจากซับเน็ตที่หนึ่งและที่สองมีซับเน็ตมาสก์ที่เหมือนกันคือ 27 บิตในฟิลด์ฮาร์ดแวร์จึงถูกใช้สำหรับตัวบ่งชี้ซับเน็ต ในซับเน็ตแรก บิตคือ 100 และในวินาทีคือ 101 ความแตกต่างนี้ช่วยให้เราเตอร์กำหนดทิศทางการรับส่งข้อมูลเครือข่ายได้อย่างถูกต้อง

มันสามารถเพิ่มขึ้นอย่างรวดเร็ว

จะเห็นได้ชัดว่าในเครือข่ายขนาดใหญ่หรือซับซ้อนกว่านั้น ข้อผิดพลาดที่เล็ดลอดเข้ามาได้ง่ายมาก ด้วย ipcalc คุณสามารถมั่นใจได้ว่าค่าของคุณถูกต้อง คุณยังต้องกำหนดค่าเครือข่ายของคุณ แต่อย่างน้อยคุณก็รู้ว่าค่าที่คุณใช้นั้นถูกต้อง