Ip 주소의 서브넷
첫째, 서브넷 마스크 개요
1. 서브넷 마스크 개념
서브넷 마스크는 네트워크 id 와 호스트 id 를 구분하고 IP 주소가 LAN 에 있는지 원격 네트워크에 있는지 설명하기 위해 IP 주소의 일부를 마스킹하는 32 비트 주소입니다.
2. 서브넷 마스크 수를 결정합니다
서브넷 마스크에 사용되는 비트 수는 가능한 서브넷 수와 서브넷당 호스트 수에 따라 다릅니다. 서브넷 마스크를 정의하기 전에 처음에 사용한 서브넷 및 호스트 수를 찾아야 합니다.
서브넷 마스크를 정의하려면 다음을 수행합니다.
A. 사용할 그룹 주소를 결정합니다. 예를 들어 우리가 신청한 네트워크 번호는' 2 10.73.a.b', 네트워크 주소는 클래스 c IP 주소, 네트워크 식별자는' 2 10.73', 호스트 식별자는' a.b' 입니다
B, 우리가 지금 필요로 하는 서브넷 수와 앞으로 확장할 수 있는 서브넷 수에 따라 호스트의 일부 비트로 서브넷 마스크를 정의합니다. 예를 들어 지금 12 개의 서브넷이 필요하고 나중에 16 개의 서브넷이 필요할 수 있습니다. 세 번째 바이트의 처음 네 자리를 사용하여 서브넷 마스크를 결정합니다. 처음 네 자리는 모두' 1' 으로 설정됩니다. 즉, 세 번째 바이트는' 1 1 10000' 이며 일시적으로 새 이진 서브넷 마스크라고 합니다.
C, 초기 네트워크의 모든 비트는' 1' 으로 설정됩니다. 즉 처음 두 바이트는' 1' 으로 설정되고 네 번째 바이트는' 0' 으로 설정됩니다. 그러면 서브넷 마스크의 불연속적인 이진 형식은'111111'입니다
D, 이 숫자를 불연속 십진 형식으로 변환: "255.255.240.0"
이 숫자는 네트워크의 서브넷 마스크입니다.
3.3 의 표시. IP 마스크
첫째, 서브넷 표시 없음
서브넷이 없는 IP 주소의 경우 호스트 번호가 0 인 마스크로 쓸 수 있습니다. 예를 들어 IP 주소는 2 10.73. 140.5 이고 마스크는 255.255.255.0 입니다. IP 주소만 쓰는 기본 마스크를 사용할 수도 있습니다.
B, 서브넷 표시 방법
서브넷이 있으면 쌍으로 나타나야 합니다. 클래스 c 주소를 예로 들어 보겠습니다.
1.IP 주소의 처음 세 바이트는 네트워크 번호를 나타내고, 마지막 바이트는 서브넷 번호와 호스트 번호를 나타내며, 두 IP 주소가 네트워크 세그먼트에 속하는지 여부를 나타냅니다. 동일한 네트워크 구간에 속하는 경우 두 주소 간의 정보 교환은 라우터를 통과하지 않습니다. 같은 네트워크 구간에 있지 않으면, 즉 서브넷 번호가 다르면 두 주소 간의 정보 교환은 라우터를 통해 진행된다. 예를 들어 IP 주소가 2 10.73. 140.5 인 호스트의 경우 호스트 식별자는 0000 10 1 이고 IP 주소의 경우 위의 두 호스트 식별의 처음 세 자리는 모두 000 입니다. 즉, 두 개의 IP 주소가 동일한 네트워크 영역에 있으며 두 호스트는 라우터를 통해 정보를 교환할 필요가 없습니다. 10.73.60. 1 의 호스트 식별자는 000000 1 입니다. 2 10.73.60.252 의 호스트 식별자는11111/kloc 입니다 이 두 호스트 id 000 의 처음 세 자리는 0 1 1 과 다릅니다. 서브넷 호스트 번호는 각각 1 과 252 입니다.
2. 마스크의 역할은 서브넷이 있고 얼마나 많은 서브넷이 있는지 나타내는 것이지만, 서브넷 수는 하나의 범위로만 나타낼 수 있으며, 얼마나 많은 서브넷이 있는지 정확히 말할 수는 없습니다. 마스크는 특정 서브넷 번호를 표시하지 않지만 서브넷 마스크 형식 (클래스 c 주소용) 을 가지고 있습니다.
둘째, 서브넷 마스크의 용도 중 하나
네트워크 디바이스가 가능한 한 빨리 이 네트워크 세그먼트의 주소를 이 네트워크 세그먼트의 주소와 구분할 수 있도록 합니다.
호스트 a 와 호스트 b 는 정보를 교환합니다.
호스트 A: IP 주소: 202.5438+083.58. 1438+0.
서브넷 마스크: 255.255.255.0
라우팅 주소: 202. 183.58. 1.
호스트 B: IP 주소: 202.438+083.56.5.
서브넷 마스크: 255.255.255.0
라우팅 주소: 202. 183.56. 1.
라우터가 포트 202. 183.58. 1 에서 호스트 A 에서 호스트 B 로 전송된 IP 데이터 메시지를 수신한 후
(1) 먼저 포트 주소 202. 183.58. 1 및 서브넷 마스크 주소 255.255.0 을' 논리 and' 로 하여 포트 세그먼트 주소 20 을 얻습니다
(2) 그런 다음 대상 주소 202. 183.56.5 와 서브넷 마스크 주소 255.255.255.0 의' 논리 및' 202.1
(3) 결과 202. 183.56.0 을 포트 네트워크 세그먼트 주소 202. 183.58.0 과 비교하고, 같으면 해당 네트워크 세그먼트에 속하는 것으로 간주하고 전달하지 않습니다. 그렇지 않은 경우 IP 패킷을 포트 202. 183.56. 1 해당 네트워크 세그먼트로 전달합니다.
셋째, 서브넷 마스크의 두 번째 사용
서브넷을 더 세분화하여 서브넷 주소 공간을 줄입니다. 네트워크 세그먼트를 여러 개의 하위 세그먼트로 나누면 네트워크 관리가 용이합니다.
학교 캠퍼스 네트워크 정보 센터는 202.183.56.0 (클래스 C 주소) 을 두 부서에 배정할 수 있는데, 각 부서에는 대략 120 이 있다.
컴퓨터, 서브넷 마스크 주소는 255.255.255. 128 로 정의할 수 있습니다.
이렇게 하면 원래 네트워크 세그먼트를 별도의 하위 네트워크 세그먼트 두 개로 분할하여 네트워크 관리를 용이하게 할 수 있습니다.
1 시리즈의 주소 범위: 202.183.56.1-202.183.56./
서브넷 주소:110010111/kloc
2 부 주소 범위: 202.183.56.129-202.183.56.254.
서브넷 주소:110010111/kloc
넷째, 서브넷 마스크 알고리즘
(a), 서브넷 수를 사용하여 계산합니다
서브넷 마스크를 찾기 전에 나눌 서브넷 수와 서브넷당 필요한 호스트 수를 찾아야 합니다.
1) 서브넷 수를 바이너리 표현으로 변환합니다.
2) 이진 자릿수를 n 으로 가져옵니다.
3) IP 주소의 서브넷 마스크를 가져오고 호스트 주소 섹션의 처음 n 비트를 1 으로 설정하여 IP 주소의 서브넷 마스크를 얻습니다.
클래스 b IP 주소 168. 195.0.0 을 27 개의 서브넷으로 분할하려면 :
1) 27 =11011
2) 이진수는 5 자리, N = 5 입니다.
3) 클래스 b 주소의 서브넷 마스크 255.255.0.0 호스트 주소의 처음 5 자리를 1 255.255.248.0 에 배치합니다.
27 개의 서브넷으로 나누어진 클래스 b IP 주소 168. 195.0.0 의 서브넷 마스크입니다.
(2), 계산에 호스트 수 사용
1) 호스트 수량을 바이너리 표현으로 변환합니다.
2) 호스트 수가 254 개 이하인 경우 (예약된 두 개의 IP 주소 제거 주의), 호스트의 이진수 N 을 얻습니다. 여기서 N8 은 긍정입니다. 즉, 호스트 주소는 8 비트 이상을 차지합니다.
3) 255.255.255.255 를 사용하여 이 IP 주소의 모든 호스트 주소 비트를 1 으로 설정한 다음 N 비트를 뒤에서 앞으로 모두 0 으로 설정하면 서브넷 마스크 값입니다.
B(c) 클래스 IP 주소 168. 195.0.0 을 각각 700 개의 호스트 (17) 를 가진 여러 서브넷으로 분할하려는 경우:
1) 700 =1010111/
2) 이진수는 10 자리, N = 10( 100 1) 입니다.
3) 클래스 b 주소 서브넷 마스크 255.255.0.0 의 모든 호스트 주소를 1 으로 설정하여 255.255.255 를 얻습니다.
그런 다음 후면 10 위치를 뒤에서 앞으로 0 (11111/kloc-0) 으로 설정합니다
255.255.252.0 입니다. 700 개의 호스트로 나눌 클래스 b IP 주소 168. 195.0.0 의 서브넷 마스크입니다.
동사 (verb 의 약어) 서브넷 계산
Cisco Network Technology College 의 CCNA 교육 시험에서 많은 학생들이 IP 주소를 계획할 때 항상 서브넷 및 마스크 계산에 골머리를 앓고 있습니다. 지금 나는 너에게 이 문제를 순조롭게 해결할 수 있는 작은 기교를 하나 주겠다.
먼저 CCNA 시험에서 흔히 볼 수 있는 질문을 살펴보겠습니다. 한 호스트의 IP 주소는 202.112.14.137 입니다.
일반적인 방법은 호스트 주소와 서브넷 마스크를 이진수로 변환하여 논리와 연산을 통해 네트워크 주소를 얻는 것입니다. 실제로 생각해 보면 또 다른 방법이 나올 수 있다. 255.255.255.224 의 마스크에는 256-224 = 32 개의 IP 주소 (네트워크 주소 및 브로드캐스트 주소 포함) 가 포함되므로 이 마스크가 있는 네트워크 주소는 반드시 32 의 배수여야 한다. 네트워크 주소는 서브넷 IP 주소의 시작이고 브로드캐스트 주소는 끝입니다. 사용 가능한 호스트 주소는 이 범위 내에 있으므로 128 만 137 보다 약간 작고 32 의 배수이므로 네트워크 주소는 202.4438+02.14./입니다 브로드캐스트 주소는 다음 네트워크의 네트워크 주소에서 1 을 뺀 값입니다. 32 의 다음 배수는 160 이므로 브로드캐스트 주소는 202.112.14./kloc-일 수 있습니다
CCNA 시험에서는 네트워크당 호스트 수에 따라 서브넷 주소를 계획하고 서브넷 마스크를 계산해야 하는 문제도 있습니다. 이것도 위의 원리에 따라 계산할 수 있다. 예를 들어 서브넷에는 10 호스트가 있으므로 해당 서브넷에 필요한 IP 주소는 다음과 같습니다.
10+1+1+1=13
참고: 첫 번째 1 은 이 네트워크 연결에 필요한 게이트웨이 주소를 나타내고, 다음 두 개의 1 은 각각 네트워크 주소와 브로드캐스트 주소를 나타냅니다. 13 이16 보다 작기 때문에 (16 은 2 의 4 승과 같음) 호스트 비트는 4 비트입니다. 하지만
256- 16=240
따라서 서브넷 마스크는 255.255.255.240 입니다.
서브넷에 14 개의 호스트가 있는 경우 많은 학생들이 여전히 16 주소 공간의 서브넷을 할당하고 게이트웨이에 주소를 할당하는 것을 잊어버린다는 실수를 자주 합니다. 이것은 잘못된 것입니다. 왜냐하면:
14+1+1+1=17
17 은 16 보다 크므로 32 개 주소의 서브넷 (32 는 2 의 5 승과 같음) 만 할당할 수 있습니다. 서브넷 마스크는 255.255.255.224 입니다.
여섯째, 서브넷 마스크 및 그 응용 (합성)
TCP/IP 프로토콜에서 서브넷 마스크는 네트워크의 호스트가 동일한 네트워크 세그먼트에 있는지 여부를 구분하는 데 사용됩니다. 대규모 네트워크에서 클래스 a 서브넷 마스크는 255.0.0.0, 클래스 b 서브넷 마스크는 255.255.0.0, 클래스 c 서브넷 마스크는 255.255.255.0 입니다.
호스트의 서브넷 마스크가 IP 주소 202.119.115.78 이면 해당 서브넷 마스크는 255.255.258 입니다 이 두 데이터를 AND 연산한 후 얻은 값의 0 이 아닌 바이트 부분이 네트워크 ID 입니다. 절차는 다음과 같습니다.
202.119.115.78 의 이진 값은 다음과 같습니다.
11001010.011/kloc
255.255.255.0 의 이진 값은 다음과 같습니다.
1111111 Kloc-0/111111/;
AND 의 결과는 다음과 같습니다.
11001010.011/kloc
이진수로 변환하면 다음과 같습니다.
202.119.115.0
네트워크 ID 이고 나머지 IP 주소는 호스트 ID, 78 이므로 다른 호스트의 IP 주소가 202.119.11/Kloc-0 일 때
그러나 실제 응용 프로그램에서는 여러 네트워크가 전 세계에 분산되어 있을 수 있으며 네트워크당 호스트 수는 많지 않습니다. 여러 개의 네트워크 id 를 신청하면 IP 자원을 낭비할 수 있어 경제적이지 않다. 서브넷 마스크에 약간의 이동이 있는 경우 하나의 네트워크 ID 만 신청하면 이 문제를 해결할 수 있습니다.
예를 들어, 각각 20, 25, 50 개, A, B, C 네트워크라는 세 개의 서로 다른 서브넷이 있지만, 단 하나의 네트워크 ID 만 202.119./Kloc 입니다. 먼저 a, b 네트워크의 서브넷 마스크를 255.255.224 로 변경하고 224 의 이진수는 1 1 100000 으로 변경하겠습니다
1111111 Kloc-0/111111/;
이렇게 하면 호스트 ID 의 고 3 자리를 각각 000,00 10/,010,011,1,1으로 서브넷을 나눕니다. 000 (자체용) 과 1 1 1 (방송용) 을 제외한 6 가지 조합으로 6 개의 서브넷을 제공할 수 있으며 IP 주소는 (처음 3 바이트) 입니다
0010001~ 001111/
0100001~ 01111/;
0110001~ 0111/kloc
1000001~100111/kloc
1010001~1011/kloc
1100001~111/kloc/
네트워크 a 는 16 1~ 190 을 선택하고 네트워크 b 는 193~222 를 선택합니다
C 망을 다시 한 번 봅시다. C 네트워크에는 50 개의 호스트가 있기 때문에 위의 세그먼트 방법에 따라 IP 요구 사항을 충족시킬 수 없습니다. 서브넷 마스크를 255.255.255. 192 로 설정할 수 있습니다. 이진 값은 1 1000000 이므로 위와 같이
0100001~ 01111/;
1000001~101111/kloc
이렇게 하면 서브넷당 62 개의 IP 를 사용할 수 있고 65~ 126 은 세 번째 네트워크에 할당되므로 하나의 네트워크 ID 가 여러 서브넷을 구현할 수 있습니다.
서브넷 마스크가 너무 크게 설정되어 있으면 서브넷 범위가 넓어진 것입니다. 그런 다음 서브넷 라우팅 규칙에 따라 로컬 시스템과 동일한 서브넷에 있지 않은 대상 시스템으로 전송된 데이터는 잘못된 위상 및 결과로 인해 동일한 서브넷 내에 있는 것으로 간주될 수 있습니다. 그러면 패킷은 시간 초과가 발생할 때까지 서브넷 내에서 루프됩니다. 데이터가 대상 시스템에 제대로 도달하지 못해 네트워크 전송 오류가 발생합니다. 서브넷 마스크 설정이 너무 작으면 원래 같은 서브넷에 속해 있던 시스템 간의 통신이 서브넷 간 전송으로 간주되고 패킷이 기본 게이트웨이에 전달되어 기본 게이트웨이의 부담이 증가하여 네트워크 효율성이 떨어집니다. 따라서 임의로 서브넷 마스크를 설정하는 것은 옳지 않습니다. 네트워크 관리 부서의 규정에 따라 설정해야 합니다.
IP 주소 자원이 고갈됨에 따라 할당할 수 있는 IP 주소가 점점 줄어들고 있으며, 수백 대의 컴퓨터 네트워크에서 몇 개의 IP 주소만 얻을 수 있는 경우가 많기 때문에 많은 사람들이 다른 기술을 사용하여 IP 공간을 확장하기 시작했습니다.