나는 짓는다 Toolz.dev그리고 WordPress 플러그인 및 Laravel API 와 함께 VPC 를 조각하고 방화벽 규칙을 작성하는 클라우드 콘솔에서 상당한 시간을 보냈습니다. 서브 네팅은 이론이 간단하고 산술이 까다로운 기술 중 하나이며 까다로운 부분은 실수가 숨어있는 곳과 정확히 일치하는 보안 그룹을 출하했습니다 /16 내가 의미했을 때 /24, 의도한 것보다 훨씬 더 넓은 네트워크를 여는 것, 왜냐하면 제가 머릿속에서 마스크 수학을 했는데 좀 틀렸기 때문입니다. The IP 서브넷 계산기 다시는 손으로 일어나지 않도록 존재합니다. 이 가이드는 계산하는 내용,숫자가 왜 그렇게 나오는지,사람과 그들이 신뢰하는 순진한 계산기 모두를 넘어뜨리는 엣지 케이스에 대해 설명합니다.
TL;DR: IPv4 서브넷 계산기는 다음과 같은 주소와 CIDR 접두사를 사용합니다
192.168.1.10/24및 네트워크 주소, 브로드캐스트 주소, 첫 번째 및 마지막 사용 가능한 호스트, 서브넷 마스크, 와일드카드 마스크, 총 및 사용 가능한 주소 수를 도출합니다. 주소를 32비트 정수로 처리하고 마스크를 비트 연산으로 적용하여 중요한 두 개의 에지 케이스를 올바르게 처리합니다/31RFC 3021에 따른 2개 호스트 지점 간 링크 및 a/32단일 호스트로서,접두사 대신 점선 마스크를 허용합니다. 브라우저에서 완전히 실행되므로 입력한 주소가 업로드되지 않습니다.
서브넷이란 무엇이며 접두사는 무엇을 의미합니까?
IPv4 주소는 32비트이며 소수점 4옥텟으로 작성됩니다 192.168.1.10. 서브넷은 동일한 선행 비트를 공유하는 주소의 연속 블록입니다. 슬래시 뒤의 숫자 인 CIDR 접두사는 32 비트 중 몇 개가 네트워크 부분으로 고정되어 있는지를 나타냅니다. 나머지 비트는 자유롭게 변경되고 개별 호스트를 식별 할 수 있습니다 /24 처음 24 비트를 수정하고 호스트에 대해 8 을 남깁니다 /16 16 을 고치고 16 을 남기고, 그리고 /30 30 을 수정하고 2 만 남깁니다.
블록의 주소 수는 호스트 비트의 거듭제곱으로 2 가 됩니다. A /24 는 8 개의 호스트 비트를 가지므로 2 의 8 번째,즉 256 개의 주소입니다. A /16 는 16 개의 호스트 비트를 가지므로 65,536 개의 주소를 가진다. A /30 는 2 호스트 비트를 가지고 있으므로 4 주소. 이것은 수학의 전체 기초이며,일단 "addresses equal two to the power of thirty-two minus the prefix," 서브 네팅의 대부분은 신비한 중지.
Classless Inter-Domain Routing의 약자인 CIDR이 도입되었습니다 RFC 4632 address's 클래스가 첫 번째 옥텟에 의해 고정되었던 오래된 클래스풀 시스템을 대체하기 위해. 클래스풀 어드레싱은 엄청난 공간을 낭비했습니다. 왜냐하면 중간에 무언가가 필요하더라도 전체 클래스 A,B, C 블록을 가져와야 했기 때문입니다. CIDR 을 사용하면 필요한 것에 대해 모든 접두사 길이와 네트워크 크기를 선택할 수 있습니다. 클래스풀 레이블 A,B, C 는 여전히 나를 포함한 도구에 표시되지만 지금은 정보용입니다; 접두사는 네트워크 경계를 결정하는 것입니다.
왜 모든 서브넷에 있는 두 개의 주소는 사용할 수 없는가?
일반 서브넷에서는 첫 번째와 마지막 주소가 예약되어 호스트에 할당할 수 없습니다. 모든 호스트 비트가 0 으로 설정된 첫 번째 주소는 네트워크 주소이며,서브넷 자체의 이름을 지정합니다. 모든 호스트 비트가 1 로 설정된 마지막 주소는 브로드캐스트 주소이며,이 주소로 전송된 패킷은 서브넷의 모든 호스트에 한 번에 도달합니다. 이 두 개가 음성으로 사용되기 때문에 사용 가능한 호스트 수는 총 주소 수에서 2 를 뺀 값입니다.
그렇기 때문에 a /24 총 주소는 256개이지만 사용 가능한 주소는 254개에 불과합니다 /304 개의 주소로, 당신에게 정확하게 2 개의 사용 가능한 호스트를 제공합니다. The /30 는 두 라우터 사이의 링크에 대한 고전적인 선택입니다, 포인트 - 투 - 포인트 링크는 정확히 두 개의 주소를 필요로하고 더 이상 아무것도 없기 때문에, 계산기는 네트워크 및 브로드 캐스트 주소를 명시 적으로 철자, 첫 번째 및 마지막 사용 가능한 호스트와 함께, 그래서 당신은 어떤 주소가 오프 리밋 있는지 해결할 필요가 없습니다.
계산기는 숫자를 어떻게 계산합니까?
후드 아래에서는 32 비트 정수에 대한 비트 산술이며,이는 가장 빠르고 오류 발생 가능성이 가장 적은 방법입니다. 주소는 각 옥텟을 제자리로 이동시켜 부호 없는 단일 정수로 포장됩니다. 접두사의 마스크는 이동에 의해 생성되는 1 뒤에 0 이 이어지는 실행입니다 0xFFFFFFFF 왼쪽 32 minus the prefix. 거기에서 모든 값은 하나의 연산입니다:
- 네트워크 주소는 호스트 비트를 0으로 만드는 마스크를 사용하여 비트 단위로 AND된 주소입니다.
- 브로드캐스트 주소는 모든 호스트 비트를 설정하는 마스크의 역수로 구성된 네트워크 OR입니다.
- 와일드카드 마스크는 단순히 서브넷 마스크의 비트 역수입니다.
- 첫 번째 사용 가능한 호스트는 네트워크 주소에 1을 더한 것이고, 마지막 호스트는 방송에서 1을 뺀 것입니다.
이렇게 하면 사람들이 손으로 이진 문자열로 변환할 때 스며드는 실수를 회피합니다. 또한 역변환을 하찮게 만듭니다: 점선 마스크를 돌리는 것 처럼요 255.255.255.0 다시 접두사로 돌아가서 선행 1 비트를 세고 계산기는 슬래시 표기법 대신 마스크를 입력하면 그렇게합니다. 모든 것이 전체적으로 부호없는 32 비트 정수로 유지되며,이는 높은 비트에 음수가 들어 가지 않도록 부호없는 해석을 강요해야하기 때문에 JavaScript 에서 중요합니다.
대부분의 도구가 잘못되는 가장자리 사례는 무엇입니까?
두 접두사는 간단한 "minus two" 규칙을 깨고,놀라운 수의 계산기가 잘못 처리합니다.
첫 번째는 /31. 원래 규칙에 따라 a /31 두 개의 주소가 있고 둘 다 예약되어 있어 사용할 수 있는 호스트가 전혀 남지 않으므로 쓸모가 없습니다. RFC 3021 a를 허용하여 이를 수정했습니다 /31 브로드캐스트 주소가 필요 없는 지점 간 링크에서는 두 주소를 모두 사용할 수 있게 됩니다. 이 계산기는 a 를 보고합니다 /31 네트워크 및 브로드캐스트 주소가 두 개의 호스트 주소로 두 배로 증가하는 두 개의 사용 가능한 호스트로서 이는 최신 라우터가 직렬 및 지점 간 인터페이스에서 수행하는 작업입니다.
두번째는 /32. ᅡ /32 는 단일 주소,호스트 경로입니다. 정확히 하나의 머신을 나타내며,이는 루프백 주소,호스트별 방화벽 규칙 및 개별 경로가 표현되는 방식입니다. 계산기는 네트워크 주소가 주소 자체와 같고 별도의 범위가 없는 하나의 사용 가능한 호스트로 보고합니다. 두 개를 맹목적으로 빼는 도구는 이 두 개 모두에 대해 음수 또는 0 호스트를 보고하는데 이는 말도 안되는 일이며,이 하나가 그렇지 않은지 확인했습니다.
서브넷 계산기 사용법
1 단계: 주소와 접두사를 입력합니다
다음과 같은 CIDR 접두사가 있는 IPv4 주소를 입력합니다 10.0.0.0/8 또는 192.168.1.10/24. 접두사는 0 부터 32 까지 무엇이든 될 수 있습니다. 접두사가 없는 주소를 붙여넣으면 도구는 a 를 가정합니다 /24는, 가장 일반적인 기본값이며, 거기에서 조정할 수 있습니다.
2 단계: 또는 점선 서브넷 마스크를 사용합니다
접두사가 아닌 마스크가 있는 경우 주소와 마스크를 공백으로 구분하여 입력하세요 192.168.1.10 255.255.255.0. 계산기는 마스크의 선행 1비트 수를 계산하고 이를 일치하는 접두사로 변환한 다음 마스크가 연속되지 않은 마스크를 거부합니다. 이러한 마스크는 유효한 CIDR 마스크가 아니기 때문입니다.
3 단계: 결과 읽기
네트워크 주소, 브로드캐스트 주소, 사용 가능한 호스트 범위, 서브넷 마스크, 와일드카드 마스크, 총 주소 및 사용 가능한 주소 수, 클래스 범위 및 주소가 RFC 1918 하에서 비공개인지 여부를 얻을 수 있습니다 주소와 마스크의 바이너리 보기도 있으며, 이는 네트워크 경계가 정확히 어디에 해당하는지 확인하는 가장 빠른 방법입니다.
4 단계: 필요한 것을 복사하십시오
각 값에는 복사 버튼이 있으므로 CIDR 표기법을 경로 테이블로, 호스트 범위를 문서로, 와일드카드 마스크를 Cisco 액세스 목록으로 들어올릴 수 있으며, 다시 입력하거나 전치된 옥텟을 위험에 빠뜨리지 않아도 됩니다.
서브넷 마스크 및 접두사 참조
이것은 제가 계속 다시 찾는 표입니다. 계산기는 이를 실시간으로 생성하므로 숫자가 결코 오래되지 않습니다.
| CIDR | 서브넷 마스크 | 총 주소 | 사용 가능한 호스트 |
|---|---|---|---|
| /24 | 255.255.255.0 | 256 | 254 |
| /25 | 255.255.255.128 | 128 | 126 |
| /26 | 255.255.255.192 | 64 | 62 |
| /27 | 255.255.255.224 | 32 | 30 |
| /28 | 255.255.255.240 | 16 | 14 |
| /29 | 255.255.255.248 | 8 X 1000 X 1000 X 1000 X 1000 X 1000 X 100 X 80 X 80 X 80 X 80 X 80 X 80 X 80 X 80 X 80 X 80 X 80 X 80 X 80 X 80 X 80 X 80 X 80 X 80 X 80 X 80 X 80 X 80 X 80 X 80 X 80 X 80 X 80 X 80 X 80 X 80 X 80 X 80 X 80 X 80 X 80 X 80 X 80 X 80 X 80 X 80 X 80 X 80 X 80 X 80 X 80 X 80 X 80 X 80 X 80 X 80 X 80 X 80 X 80 X 80 X 80 X 80 X 80 | 6 X 1000 X 1000 X 1000 X 100 X 60 X 60 X 60 X 60 X 60 X 60 X 60 X 60 X 60 X 60 X 60 X 60 X 60 X 60 X 60 X 60 X 60 X 60 X 60 X 60 X 60 X 60 X 60 X 60 X 60 X 60 X 60 X 60 X 60 X 60 X 60 X 60 X 60 X 60 X 60 X 60 X 60 X |
| /30 | 255.255.255.252 | 4 X 1000 X 1000 X 1000 X 400 X 400 X 40 X 40 X 40 X 40 X 40 X 40 X 40 X 40 X 40 X 40 X 40 X 40 X 40 X 40 X 40 X 40 X 40 X 40 X 40 X 40 X 40 X 40 X 40 X 40 X 40 X 40 X 40 X 40 X 40 X 40 X 40 X 40 X 40 X 40 X 40 X | 2 X 2000 X 2000 X 2000 X 2000 X 2000 X 2000 X 2000 X 2000 X 2000 X 2000 X 2000 X 2000 X 2000 X 2000 X 2000 X 2000 X 2000 X 2000 X 2000 X 2000 X 2000 X 2000 X 2000 X 2000 X 2000 X 2000 X 2000 X 2000 X 2000 X 2000 X 2000 X 2000 X |
패턴은 외울 가치가 있습니다: 접두사의 각 단계 위로 블록이 반으로 줄어 듭니다. A /25 는 반 a /24, ᅡ /26 는 4 분의 1 이고,이런 식으로요. 네트워크를 분할할 때 그 반감기가 정신 모델이고 계산기는 정확한 경계를 확인하므로 정신 모델만 신뢰할 필요가 없습니다.
하나의 네트워크를 더 작은 서브넷으로 어떻게 분할합니까?
가장 일반적인 실제 작업은 단일 서브넷을 계산하는 것이 아니라 더 큰 블록을 여러 개의 작은 블록으로 나누는 것이며,이곳에서 계산기가 유지 수익을 얻는다고 가정해 보겠습니다 10.0.0.0/16 클라우드 VPC 의 경우 공용 계층,개인 계층 및 데이터베이스 계층에 대한 서브넷으로 조각해야 합니다. 접두사의 각 단계 증가는 서브넷 수를 두 배로 늘리고 크기를 절반으로 줄이므로 에서 이동합니다 /16 에 /18 각각 16,384개의 주소로 구성된 4개의 동일한 블록을 제공합니다: 10.0.0.0/18, 10.0.64.0/18, 10.0.128.0/18, 그리고 10.0.192.0/18. 계산기에 붙여넣고 네트워크 및 방송 주소가 간격이나 겹침 없이 정렬되어 있는지 확인하여 이러한 경계를 모두 확인할 수 있습니다.
여기서 함정은 서브넷이 자연 경계에 떨어져야 한다는 것입니다. A /26 블록은 어떤 주소에서도 시작할 수 없습니다; 64는 a의 블록 크기이기 때문에 마지막 옥텟의 64배에서 시작해야 합니다 /26에서 시작하려고하면. .30계산기 보고가 입력한 것과 일치하지 않는 네트워크 주소는 실수를 가장 빨리 포착하는 방법입니다. VPC 를 계획할 때 의도한 각 서브넷을 차례로 붙여넣고 네트워크 주소를 다시 읽습니다; 도구가 정의하려고 했던 것과 다른 네트워크 주소를 표시하면 적용하기 전에 경계가 잘못되었음을 알 수 있습니다. 동일한 규율이 라우터's 정적 경로와 방화벽 규칙에 대해 작동합니다. 여기서 경계 밖의 블록은 의도하지 않은 주소를 자동으로 덮습니다.
이름을 붙일만한 실제 미묘함도 있습니다: 클라우드 공급자는 네트워크와 브로드캐스트 쌍을 넘어 각 서브넷 내부에 일부 주소를 예약합니다. 예를 들어 AWS 는 서브넷당 5 개의 주소를 예약하며 처음 4 개와 마지막 1 개를 가져갑니다. 계산기는 엄격한 RFC 호스트 범위를 보고하므로 AWS 에서는 표시되는 사용 가능한 개수에서 3 개를 더 뺍니다. 이는 표준 위에 계층화된 공급자 규칙이며 수학상의 결함은 아니지만 잊어버리면 두 호스트가 짧아지는 것과 정확히 같습니다.
어떤 범위가 비공개이며, 왜 중요한가요?
RFC 1918 개인 용도로 세 개의 블록을 예약합니다: 10.0.0.0/8, 172.16.0.0/12, 그리고 192.168.0.0/16. 이것들은 공용 인터넷에서 라우팅할 수 없으며 거의 모든 가정 및 사무실 네트워크가 네트워크 주소 변환을 수행하는 라우터 뒤에서 사용하는 범위입니다. 계산기는 입력한 주소가 그 중 하나에 속하는지 여부를 표시합니다. 이는 주소 지정 체계를 계획하고 있을 때 빠른 온전한 상태 확인이며 실수로 공용 인터넷에서 다른 사람의 주소를 사용하는 것이 아니라 개인 공간 내에서 작업하고 있는지 확인하려는 경우입니다. "public" 내부 주소에 플래그가 표시되는 경우에도 유용한 넛지입니다. 이는 종종 첫 번째 옥텟의 오타를 의미하기 때문입니다.
서브넷 계산기가 다른 모든 것과 맞는 곳
네트워킹 작업은 단독으로 발생하는 경우가 거의 없습니다. 애플리케이션 뒤에 있는 인프라를 구성할 때 HTTP 응답을 디버깅하고,사용자 에이전트를 구문 분석하고,내부 서비스에 대한 자격 증명을 생성하기도 합니다. The HTTP 상태 코드 참조 애플리케이션 계층의 동반자입니다 사용자 에이전트 파서 서버에 무엇이 충돌하는지 파악하기 위해 기본 인증 생성기 내부 엔드포인트를 보호하는 자격 증명의 경우. 이진수로 마스크를 읽는 동안 숫자 베이스 간에 변환하는 경우 숫자 베이스 변환기 십진수에서 이진수 단계를 직접 처리합니다. 그리고 보안 측면에서는 신용카드 검증인 방금 설계한 네트워크에서 실행되는 체크아웃을 위한 프런트엔드 필터입니다.
더 넓은 그림을 위해 개발자 생산성 도구 검거는 하루 종일 탭에 열려 있는 경향이 있는 유틸리티를 다룹니다 코딩 도구 가이드 서브넷 계산기를 전체 개발자 툴킷의 컨텍스트에 넣습니다. Toolz.dev 의 모든 것과 마찬가지로 브라우저에서 완전히 실행되므로 계획한 주소는 절대로 머신을 떠나지 않습니다.
자주 묻는 질문
CIDR 접두사는 무엇을 의미합니까?
CIDR 접두사는 슬래시 뒤의 숫자이며,주소의 선행 비트 수가 네트워크를 식별하는 정도를 계산합니다. A /24 네트워크의 처음 24 비트를 수정하고 호스트에 8 비트를 남기는데,이는 총 256 개의 주소와 254 개의 사용 가능한 주소입니다. 작은 접두사는 더 많은 주소를 다루고 큰 접두사는 더 적은 주소를 다룹니다.
서브넷에 사용 가능한 호스트는 몇 개입니까?
접두사의 경우 /30 또는 더 작게,사용 가능한 호스트 카운트는 총 주소 빼기 2 인데,첫 번째 주소는 네트워크이고 마지막 주소는 브로드캐스트이기 때문입니다. A /24 254개의 사용 가능한 호스트가 있습니다 /26 는 62, 그리고 a /30 는 2 를 갖는다. 두 가지 예외는 /312개의 사용 가능한 호스트가 있는 및 /321이 있습니다.
네트워크 주소와 방송 주소의 차이점은 무엇입니까?
네트워크 주소는 블록의 첫 번째 주소이며 모든 호스트 비트가 0 으로 설정된 서브넷 자체를 식별합니다. 브로드캐스트 주소는 모든 호스트 비트가 1 로 설정된 마지막 주소이며,이 주소로 전송된 패킷은 서브넷의 모든 호스트에 한 번에 일반 서브넷의 개별 호스트에 할당될 수 없습니다.
서브넷 마스크를 CIDR 접두사로 변환하려면 어떻게 해야 하나요?
마스크의 주요 1비트 수를 세어보세요. 255.255.255.0 는 24 원비트이므로 /24; 255.255.240.0 20비트입니다 /20. 계산기는 접두사 대신 점선 마스크를 입력하면 자동으로 이 변환을 수행하며, 인접하지 않은 마스크는 거부합니다.
와일드카드 마스크는 어떤 용도로 사용되나요?
와일드카드 마스크는 서브넷 마스크의 비트 역수입니다 /24 제공합니다 0.0.0.255. Cisco 접근 제한 명부 및 OSPF 네트워크 계산서에서 사용됩니다,영 조금은 이 조금과 정확하게 일치하고 1 개 조금은 그것을 무시한다는 것을 의미합니다. 계산기가 나란히 둘 다 보여주는 이유인 서브넷 가면과 혼동하기 쉽습니다.
왜 /31 은 두 개의 사용 가능한 호스트를 표시합니까?
RFC 3021은 다음을 허용합니다 /31 네트워크와 브로드캐스트 주소가 필요하지 않은 지점 간 링크에서는 두 주소가 모두 사용 가능한 호스트 주소가 됩니다. 해당 규칙 없이 a /31 쓸모가 없는 사용 가능한 호스트가 0 개일 것입니다. A /32 는 관련 엣지 케이스이며 루프백이나 호스트 경로와 같은 단일 호스트를 나타냅니다.
어떤 IPv4 범위가 비공개입니까?
RFC 1918 예비 10.0.0.0/8, 172.16.0.0/12, 그리고 192.168.0.0/16 개인 네트워크의 경우. 이들은 공용 인터넷에서 라우팅 할 수 없으며 NAT 를 수행하는 라우터 뒤에서 대부분의 가정 및 사무실 네트워크가 사용하는 범위입니다. 계산기는 입력 한 주소가 그 중 하나에 속하는지 여부를 표시합니다.
이 계산기는 IPv6 에서 작동합니까?
아니요,이 도구는 IPv4 서브넷만 계산합니다. IPv6 는 128 비트 주소와 16 진수 표기법을 사용하므로 서브넷이 다르게 작동하고 전용 계산기가 필요합니다. IPv4 계획,방화벽 규칙 및 대부분의 일상적인 서브넷 수학이 발생하는 클라우드 VPC 크기 조정의 경우 일반적인 경우를 다룹니다.



