IP Subnet Calculator: CIDR, Netmask และช่วงโฮสต์
คำนวณรายละเอียดซับเน็ต IPv4 จากที่อยู่ IP และคำนำหน้า CIDR ได้แก่ network address, broadcast address, ช่วงโฮสต์ที่ใช้งานได้, subnet mask และ wildcard mask
IP Subnet Calculator
Results
Subnet Mask in Binary
Results follow RFC 791 (IPv4 addressing), RFC 4632 (CIDR notation), RFC 950 with RFC 919 and RFC 922 (network and broadcast reservation), and RFC 3021 (/31 point-to-point links).
เอกสารประกอบการใช้งาน
เครื่องคำนวณซับเน็ต IP
เครื่องคำนวณซับเน็ต IP ใช้คำนวณรายละเอียดเครือข่ายของที่อยู่ IPv4 และความยาวคำนำหน้า จากข้อมูลสองอย่างนี้จะหาที่อยู่เครือข่าย ที่อยู่บรอดคาสต์ ช่วงที่อยู่โฮสต์ที่ใช้งานได้ ซับเน็ตมาสก์ และไวลด์การ์ดมาสก์
เครื่องคำนวณทำอะไร
เครื่องมือนี้รับที่อยู่ IPv4 ที่เขียนเป็นตัวเลขสี่ชุดคั่นด้วยจุด เช่น 192.168.1.10 และความยาวคำนำหน้าตั้งแต่ 0 ถึง 32 นอกจากนี้ยังใช้รูปแบบ CIDR ที่เขียนทั้งสองส่วนรวมกันได้ เช่น 192.168.1.10/24 โดยส่วน /24 จะถูกย้ายไปยังช่องคำนำหน้าโดยอัตโนมัติ
เครื่องคำนวณจะแสดงผลดังนี้:
- สัญกรณ์ CIDR: เครือข่ายในรูปแบบที่อยู่/คำนำหน้า เช่น 192.168.1.0/24
- ที่อยู่เครือข่าย: ที่อยู่แรกในบล็อก ใช้ระบุเครือข่ายเอง
- ที่อยู่บรอดคาสต์: ที่อยู่สุดท้ายในบล็อก ข้อความที่ส่งไปยังที่อยู่นี้จะไปถึงโฮสต์ทุกเครื่องในซับเน็ต
- ช่วงที่อยู่โฮสต์ที่ใช้งานได้: ที่อยู่แรกและที่สุดท้ายที่อุปกรณ์สามารถใช้งานได้จริง
- โฮสต์ที่ใช้งานได้ และ ที่อยู่ทั้งหมด: จำนวนที่อยู่ที่บล็อกมี และจำนวนที่ว่างสำหรับอุปกรณ์
- ซับเน็ตมาสก์ และ ไวลด์การ์ดมาสก์: มาสก์ในรูปแบบจุด เช่น 255.255.255.0 และค่าผกผันของมันคือ 0.0.0.255
- ซับเน็ตมาสก์ที่แสดงทีละบิต โดยมีแปดบิตต่อหนึ่งอ็อกเท็ต
ผลลัพธ์เป็นไปตาม RFC 791 (การกำหนดที่อยู่ IPv4), RFC 4632 (สัญกรณ์ CIDR), RFC 950 ร่วมกับ RFC 919 และ RFC 922 (การสงวนที่อยู่เครือข่ายและบรอดคาสต์) และ RFC 3021 (ลิงก์แบบจุดต่อจุด /31)
ซับเน็ตทำงานอย่างไร
ที่อยู่ IPv4 เป็นตัวเลขขนาด 32 บิต เขียนเป็นอ็อกเท็ตสี่ตัว โดยแต่ละอ็อกเท็ตมี 8 บิตและเก็บค่าได้ตั้งแต่ 0 ถึง 255 ความยาวคำนำหน้าจะแบ่งบิตทั้ง 32 ออกเป็นสองส่วน บิตแรกจำนวนเท่าที่คำนำหน้าระบุใช้ระบุเครือข่าย ส่วนบิตที่เหลือใช้ระบุโฮสต์ภายในเครือข่ายนั้น
เครือข่าย /24 สงวน 24 บิตไว้สำหรับส่วนเครือข่าย และเหลือ 8 บิตสำหรับโฮสต์ บิตโฮสต์แปดบิตให้ที่อยู่ 2⁸ = 256 รายการ เครือข่าย /26 เหลือบิตโฮสต์เพียง 6 บิต จึงมีที่อยู่ 2⁶ = 64 รายการ
ซับเน็ตมาสก์เขียนการแบ่งส่วนเดียวกันในรูปที่อยู่ โดยใช้บิต 1 สำหรับบิตเครือข่ายทุกบิต และบิต 0 สำหรับบิตโฮสต์ทุกบิต สำหรับ /24 จะได้ 255.255.255.0 ไวลด์การ์ดมาสก์กลับค่าทุกบิตของซับเน็ตมาสก์ รายการควบคุมการเข้าถึงของเราเตอร์ โดยเฉพาะในอุปกรณ์ Cisco จะจับคู่ที่อยู่ด้วยไวลด์การ์ดมาสก์ เครื่องมือนี้จึงแสดงทั้งสองค่า
สูตรซับเน็ต
สำหรับความยาวคำนำหน้า p ระหว่าง 0 ถึง 30 เครื่องคำนวณใช้กฎต่อไปนี้ ซึ่งกำหนดโดย RFC 950 และ RFC 4632:
- ซับเน็ตมาสก์ = บิตลำดับสูงสุดจำนวน p บิตของคำขนาด 32 บิต ซึ่งกำหนดค่าเป็น 1
- ที่อยู่เครือข่าย = ที่อยู่ IP AND ซับเน็ตมาสก์ (การ AND ระดับบิตจะคงบิตไว้เฉพาะตำแหน่งที่อินพุตทั้งสองมีค่า 1)
- ที่อยู่บรอดคาสต์ = ที่อยู่เครือข่าย OR ไวลด์การ์ดมาสก์ (กำหนดบิตโฮสต์ทุกบิตเป็น 1)
- ที่อยู่ทั้งหมด = 2⁽³²⁻ᵖ⁾
- โฮสต์ที่ใช้งานได้ = 2⁽³²⁻ᵖ⁾ − 2 การลบนี้ตัดที่อยู่เครือข่ายและที่อยู่บรอดคาสต์ออก ซึ่ง RFC 950 และ RFC 919 สงวนไว้
- โฮสต์แรกที่ใช้งานได้ = ที่อยู่เครือข่าย + 1 โฮสต์สุดท้ายที่ใช้งานได้ = ที่อยู่บรอดคาสต์ − 1
ความยาวคำนำหน้าสองค่าใช้กฎต่างกัน /31 มีที่อยู่พอดี 2 รายการ และ RFC 3021 กำหนดให้ทั้งสองรายการเป็นโฮสต์ที่ใช้งานได้บนลิงก์แบบจุดต่อจุด โดยไม่มีที่อยู่บรอดคาสต์เลย /32 ระบุที่อยู่เดียว: ทั้งหมด 1 รายการ ใช้งานได้ 1 รายการ และไม่มีบรอดคาสต์ สำหรับสองกรณีนี้ เครื่องมือเรียกที่อยู่แรกว่า "ฐานคำนำหน้า" แทน "ที่อยู่เครือข่าย" เนื่องจากไม่มีบล็อกใดสงวนที่อยู่ไว้เพื่อระบุเครือข่าย
ผลลัพธ์ทุกอย่างมาจากการคำนวณทางเลขคณิตบนตัวเลขขนาด 32 บิตเพียงหนึ่งตัว เครื่องมือไม่แสดงที่อยู่ทีละรายการ ดังนั้น /0 ที่ครอบคลุมที่อยู่ 4,294,967,296 รายการของ IPv4 จึงคำนวณได้เร็วพอ ๆ กับ /32
ตัวอย่างพร้อมวิธีทำ
สำหรับที่อยู่ 10.128.7.33 ที่มีความยาวคำนำหน้า /26:
- ซับเน็ตมาสก์: บิตหนึ่งจำนวน 26 บิต ตามด้วยบิตศูนย์จำนวน 6 บิต คือ 11111111.11111111.11111111.11000000 ซึ่งเขียนได้เป็น 255.255.255.192
- ที่อยู่เครือข่าย: AND ที่อยู่กับมาสก์ อ็อกเท็ตสามชุดแรกคงเดิม ในอ็อกเท็ตสุดท้าย 33 คือ 00100001 ในเลขฐานสอง เมื่อ AND กับ 11000000 จะได้ 00000000 ซึ่งคือ 0 ที่อยู่เครือข่ายคือ 10.128.7.0 ดังนั้นสัญกรณ์ CIDR คือ 10.128.7.0/26
- ที่อยู่บรอดคาสต์: กำหนดบิตโฮสต์ทั้ง 6 บิตเป็น 1 อ็อกเท็ตสุดท้ายจะเป็น 00111111 ซึ่งคือ 63 ที่อยู่บรอดคาสต์คือ 10.128.7.63
- จำนวน: ที่อยู่ทั้งหมด 2⁶ = 64 รายการ และโฮสต์ที่ใช้งานได้ 64 − 2 = 62 รายการ
- ช่วงโฮสต์: 10.128.7.1 ถึง 10.128.7.62
- ไวลด์การ์ดมาสก์: ค่าผกผันของซับเน็ตมาสก์ คือ 0.0.0.63
ตัวอย่างที่สองใช้ค่าเริ่มต้นของเครื่องมือ 192.168.1.10/24: เครือข่าย 192.168.1.0, บรอดคาสต์ 192.168.1.255, โฮสต์ตั้งแต่ 192.168.1.1 ถึง 192.168.1.254, โฮสต์ที่ใช้งานได้ 254 รายการจากทั้งหมด 256 รายการ, ซับเน็ตมาสก์ 255.255.255.0 และไวลด์การ์ดมาสก์ 0.0.0.255
หลักเกณฑ์ที่เครื่องมือใช้
ปฏิเสธอ็อกเท็ตที่เติมศูนย์นำหน้า เครื่องมือปฏิเสธ 010.1.1.1 แทนที่จะอ่านเป็น 10.1.1.1 นี่เป็นการจงใจ ฟังก์ชัน POSIX inet_aton ซึ่งอยู่เบื้องหลัง ping, curl และตัวแก้ไขชื่อของระบบปฏิบัติการส่วนใหญ่ ถือว่าอ็อกเท็ตที่มีศูนย์นำหน้าเป็นเลขฐานแปด ดังนั้น 010.1.1.1 จึงหมายถึง 8.1.1.1 สำหรับโปรแกรมเหล่านั้น ไม่มีการตีความแบบเลขฐานสิบหรือฐานแปดแบบใดที่ตรงกันได้กับผู้อ่านทุกแบบ เครื่องมือจึงไม่รับทั้งสองแบบ คำนำหน้าที่เขียนเป็น /08 ก็ถูกปฏิเสธด้วยเหตุผลเดียวกัน
จำนวนโฮสต์ลบสอง เครื่องคำนวณบางตัวรายงานขนาดบล็อกดิบเป็นจำนวนโฮสต์ เครื่องมือนี้ทำตาม RFC 950: ในบล็อกใด ๆ ตั้งแต่ /0 ถึง /30 ส่วนโฮสต์ที่เป็นศูนย์ทั้งหมดใช้ระบุเครือข่าย และส่วนโฮสต์ที่เป็นหนึ่งทั้งหมดใช้เป็นบรอดคาสต์ ดังนั้นจึงตัดทั้งสองรายการออก และ /24 มีโฮสต์ที่ใช้งานได้ 254 รายการ ไม่ใช่ 256
/31 มีโฮสต์ที่ใช้งานได้สองรายการ ตำราเก่าที่เขียนก่อน RFC 3021 (เผยแพร่ใน 2000) ถือว่า /31 ใช้งานไม่ได้ เพราะการลบที่อยู่สงวนสองรายการทำให้เหลือศูนย์ RFC 3021 ยกเลิกการสงวนทั้งสองรายการสำหรับลิงก์แบบจุดต่อจุด และเราเตอร์รองรับวิธีนี้มาหลายทศวรรษแล้ว เครื่องมือจึงรายงานโฮสต์ที่ใช้งานได้ 2 โฮสต์และไม่มีที่อยู่บรอดคาสต์
ยอมรับคำนำหน้าตั้งแต่ /0 ถึง /32 /0 เป็นบล็อกที่ถูกต้องและครอบคลุมพื้นที่ IPv4 ทั้งหมด สอดคล้องกับการที่ 0.0.0.0/0 ปรากฏในตารางเส้นทางในฐานะเส้นทางเริ่มต้น
เฉพาะ IPv4 เท่านั้น IPv6 (RFC 4291) ใช้ที่อยู่ขนาด 128 บิตและสัญกรณ์ต่างกัน จึงอยู่นอกขอบเขตของเครื่องมือนี้ เครื่องมือยังไม่ตรวจจับช่วงที่อยู่สำหรับวัตถุประสงค์พิเศษ เช่น ที่อยู่ส่วนตัวหรือที่อยู่ลูปแบ็ก (RFC 6890) แต่รายงานเฉพาะการคำนวณทางเลขคณิตของที่อยู่
คำถามที่พบบ่อย
/24 มีโฮสต์ที่ใช้งานได้กี่รายการ 254. /24 เหลือบิตโฮสต์ 8 บิต ทำให้มีที่อยู่ 2⁸ = 256 รายการ สองรายการถูกสงวนไว้ ได้แก่ ที่อยู่เครือข่ายและที่อยู่บรอดคาสต์ จึงเหลือ 254 รายการสำหรับอุปกรณ์
ไวลด์การ์ดมาสก์คืออะไร ค่าผกผันของซับเน็ตมาสก์ทีละบิต ตำแหน่งที่ซับเน็ตมาสก์มีค่า 1 ไวลด์การ์ดมาสก์จะมีค่า 0 และกลับกัน สำหรับมาสก์ 255.255.255.0 ไวลด์การ์ดคือ 0.0.0.255 รายการควบคุมการเข้าถึงบนเราเตอร์จำนวนมากใช้ไวลด์การ์ดมาสก์เพื่อระบุว่ากฎจะจับคู่ที่อยู่ใด
เหตุใด /31 จึงไม่แสดงที่อยู่บรอดคาสต์ /31 มีที่อยู่เพียงสองรายการ หากสงวนหนึ่งรายการสำหรับเครือข่ายและอีกหนึ่งรายการสำหรับบรอดคาสต์ก็จะไม่เหลือที่อยู่ RFC 3021 จึงกำหนดให้ /31 เป็นลิงก์แบบจุดต่อจุดที่ทั้งสองที่อยู่เป็นโฮสต์ และไม่มีที่อยู่บรอดคาสต์ เครื่องคำนวณรายงานโฮสต์ที่ใช้งานได้ 2 รายการ และระบุว่าบรอดคาสต์ไม่เกี่ยวข้อง
เหตุใดจึงปฏิเสธ 010.1.1.1 แทนที่จะอ่านเป็น 10.1.1.1 เพราะระบบปฏิบัติการไม่เห็นตรงกันกับการอ่านเป็นเลขฐานสิบทั่วไป POSIX inet_aton อ่านอ็อกเท็ตที่มีศูนย์นำหน้าเป็นเลขฐานแปด ดังนั้น 010 จึงหมายถึง 8 สำหรับระบบส่วนใหญ่ การปฏิเสธอินพุตเป็นวิธีเดียวที่ไม่ทำให้ผลลัพธ์แตกต่างจากสิ่งที่เครื่องของผู้ใช้จะดำเนินการโดยไม่แจ้งให้ทราบ
ที่อยู่ทั้งหมดกับโฮสต์ที่ใช้งานได้แตกต่างกันอย่างไร ที่อยู่ทั้งหมดคือขนาดเต็มของบล็อก เท่ากับ 2 ยกกำลัง (32 ลบด้วยความยาวคำนำหน้า) ส่วนโฮสต์ที่ใช้งานได้คือจำนวนนั้นลบที่อยู่สงวนสองรายการ ยกเว้น /31 (ใช้งานได้ทั้งสองรายการ) และ /32 (ที่อยู่เดียวเป็นโฮสต์)
ที่อยู่เครือข่ายของ 192.168.1.10/24 หมายถึงอะไร คือ 192.168.1.0 ซึ่งได้จากการคงบิต 24 แรกของที่อยู่ไว้และกำหนดบิตโฮสต์เป็นศูนย์ ที่อยู่นี้ระบุซับเน็ตโดยรวมและไม่สามารถกำหนดให้แก่อุปกรณ์ได้
เอกสารอ้างอิง
- Postel, J. "RFC 791: อินเทอร์เน็ตโพรโทคอล" IETF, 1981
- Mogul, J. และ J. Postel "RFC 950: ขั้นตอนมาตรฐานอินเทอร์เน็ตสำหรับการแบ่งซับเน็ต" IETF, 1985
- Mogul, J. "RFC 919: การบรอดคาสต์อินเทอร์เน็ตดาตาแกรม" IETF, 1984
- Fuller, V. และ T. Li "RFC 4632: การเราติ้งระหว่างโดเมนแบบไร้คลาส (CIDR)" IETF, 2006
- Retana, A. และคณะ "RFC 3021: การใช้คำนำหน้าขนาด 31 บิตบนลิงก์แบบจุดต่อจุดของ IPv4" IETF, 2000