서브넷 마스크
- 용어 정리
- 서브넷: 잘게 분해된 것.
- 서브네팅: 서브넷 하는 과정
- 슈퍼네팅: 서브넷이 되어 잘게 분해된 것을 다시 합치는 것.
- 서브넷 마스크
- 서브넷이 되어 잘게 분해된 것을 각각 하나의 지역이라고 하면
- ex) a동, b동, c동이 있을 경우
- 해당 동을 구분하는 것을 의미한다.
- 서브넷 마스크 & IPv4의 A, B, C 클래스
- 서브넷 마스크
- 총 4개의 옥텟으로 네트워크는 중간에 0 없이 1로 채워야 한다.
- 서브넷 마스크를 구할 시 앞의 ip는 중요하지 않다
- ex) 203.76.25.1/26
- 255.255.255.192
- ex) 203.76.25.1/26
- 네트워크와 호스트
- 네트워크: 하나의 그룹
- ex) 대한민국의
- 호스트: 주소값
- ex) 길동이의 집
- 네트워크: 하나의 그룹
- A 클래스 기본 서브넷 마스크
- 1개의 네트워크 + 3개의 호스트
- ex) 대한민국의 길동이의 집
- 서브넷 마스크: 1개의 네트워크이기에 1이 총 8개로 255.0.0.0
- B 클래스 기본 서브넷 마스크
- 2개의 네트워크 + 2개의 호스트
- ex) 대한민국의 서울시의 길동이의 집
- 서브넷 마스크: 2개의 네트워크이기에 1이 총 16개로 255.255.0.0
- C 클래스 기본 서브넷 마스크
- 3개의 네트워크 + 1개의 호스트
- ex) 대한민국의 서울시의 xx동의 길동이의 집
- 서브넷 마스크: 3개의 네트워크이기에 1이 총 24개로 255.255.255.0
- 서브넷 마스크
- 사이더(CIDR) 표기법
- Classless Inter-Domain Routing 으로 네트워크 구분을 클래스로 하지 않는다는 의미가 된다.
- 표기법
- 1/*
- 1이 *개수 만큼 네트워크 아이디로 사용하겠다라는 의미
- ex) 1/24 ⇒ 255.255.255.0
- ex) 1/26 ⇒ 255.255.255.192
- 1/*
- 문제
- 문제 1
- IPv4의 C클래스 네트워크를 26개의 서브넷으로 나누고, 각 서브넷에는 4~5개의 호스트를 연결하려고 한다면 서브넷 마스크 값은?
- 우선 C클래스이기이 ⇒ 255.255.255 가 되고
- 26개의 서브넷으로 나눈다는 것은 나머지를 가지로 26개가 사 용할 수 있도록 해야하는 것으로 나머지 8개의 비트로 26개를 만들기 위해선
- 11111000으로 1이 총 5개로 2**5 인 32가 되어야 한다
- 그리고 4~5개의 호스트를 연결한다는 것은
- 11111000에서 뒤에 있는 000 으로 만들 수 있는 건
- 가장 앞의 000과 가장 뒤의 111 을 제외한 8-2 = 6개를 연결할 수 있다는 의미
- 11111000에서 뒤에 있는 000 으로 만들 수 있는 건
- 그래서 결과는 11111111.11111111.11111111.11111000 으로
- 255.255.255.248 이 된다
- 즉 ?개의 서브넷으로 나눈다, 서브넷이 필요하다라고 하면
- 기업에게 나눠줄 ?개의 서브넷으로 만들기 위해 몇 비트의 네트워크를 사용해야 하는지 구해라는 의미와 유사할 듯?
- IPv4의 C클래스 네트워크를 26개의 서브넷으로 나누고, 각 서브넷에는 4~5개의 호스트를 연결하려고 한다면 서브넷 마스크 값은?
- 문제 2
- 클래스 B주소를 가지고 서브넷 마스크 255.255.255.240으로 서브넷을 만들었을 때 나오는 서브넷의 수와 호스트의 수가 맞게 짝지어진 것은?
- 서브넷 수는 몇 개 회사에 나눠줄 것인지
- 호스트의 수는 하나의 회사에 몇 대의 컴퓨터를 사용할 수 있는지를 의미
- 여기서 나오는 서브넷 수와 호스트 수는 모두 가장 앞, 가장 뒤의 것을 사용할 수 없다.
- 그래서 서브넷 수는 B클래스가 기준이기에
- 255.255를 가지고 나머지 255.240을 만들기 위해선 1이 총 12개가 있어야하기에
- 2**12이 되어 4096이 되는데 가장 앞, 가장 뒤의 2개를 사용하지 못해서
- 4094개가 된다
- 여기서 서브넷의 경우엔 요즘엔 기본적으로 ip subnet zero를 사용을 해서 보기에 원래는 4096이고 없다면 -2를 한 4094이 된다.
- 그래서 문제에 ip subnet zero 문구를 확인해서 적용되지 않았다는 문구가 있다면 -2를 해줘야 한다.
- 호스트 수도 마찬가지로
- 나머지 4개의 비트로 총 2**4인 16개중 가장 앞, 가장 뒤를 제외하면
- 14개가 된다.
- 호스트는 무조건 2개를 빼줘야 한다.
- 이유는
- 맨 앞: 네트워크 IP 구분을 위한 용도
- 맨 뒤: 브로드캐스트 IP 용도
- 이유는
- 클래스 B주소를 가지고 서브넷 마스크 255.255.255.240으로 서브넷을 만들었을 때 나오는 서브넷의 수와 호스트의 수가 맞게 짝지어진 것은?
- 문제
- 서브넷 문제의 기출 변형
- 네트워크 ID가 203.253.55.0 일 때 네트워크에서 각 서브넷은 25개 호스트가 필요하고 ~~~
- 위의 문제는 지난 문제들과 다르게 서브넷 개수를 말한 것이 아니라
- 25개의 호스트의 개수가 필요하다고 했기에 서브넷 문제가 아닌
- 호스트 개수를 구하는 문제가 된다.
- 답은: 255.255.255.224 가 된다.
- 변형 2
- 위의 변형과 같은 문제지만 문제가 조금 다르게 나왔음.
- C class의 네트워크를 서브넷으로 나누어 각 서브넷에 4~5대의 PC를 접속할 때, 서브넷 마스크 값은?
- 각 서브넷에 연결할 pc가 4~5대이기에 이 또한 호스트에 대한 계산을 해야한다
- 그래서 답은 255.255.255.248 이 된다.
- 변형 3
- 255.255.255.224인 서브넷에 최대 할당 가능한 호스트 수는?
- 우선 호스트 수는 가장 앞, 가장 뒤를 빼야하기에
- 11100000 이기에 2**5 -2 인
- 30개가 된다
- 255.255.255.224인 서브넷에 최대 할당 가능한 호스트 수는?
- 서브넷 문제의 기출 변형
- 문제 1
서브넷 계산
- 문제
- 네트워크주소가 192.168.100.128이고 서브넷 마스크가 255.255.255.192인 네트워크에서 사용 가능한 마지막 IP 주소는?
- 우선 서브넷 마스크로 확인했을 땐
- 255.255.255 + 11000000 이 되고
- 네트워크주소는 서브넷 마스크에서 만들 수 있는 경우 중 3번째로
- 00000000
- 01000000
- 10000000 ← 얘가 된다.
- 11000000
- 이후 3번째인 10000000에서 브로드캐스트는 10111111이 되어 255.255.255.191 이지만
- 사용하지 못하기에 사용 가능한 마지막 IP 주소는 255.255.255.190 이 된다.
- 우선 서브넷 마스크로 확인했을 땐
- 브로드캐스트 주소를 찾기
- IP 주소: 192.168.3.157
- 서브넷 마스크 값: 255.255.255.192
- 답: 192.168.3.191
- 네트워크주소가 192.168.100.128이고 서브넷 마스크가 255.255.255.192인 네트워크에서 사용 가능한 마지막 IP 주소는?
- 문제
- C 클래스 192.168.5.0 대역을 할당받아 서브넷마스크 255.255.255.128로 설정 두 번째 서브네트워크에 속하면서 할당 가능한 IP 주소 중 가장 작은 값으로는?
- 여기서 헷갈렸던게 두 번째 서브네트워크라는 말에서 헷갈렸는데
- 생각해보면 서브넷마스크는 중간에 0이 들어올 수 없기에 C클래스 128이면
- 255.255.255 + 10000000 으로 두 개만 배정할 수 있는 것이기에
- 가장 앞에 있는 128이 0이냐 1이냐로 생각할 수 있는데 두 번째 이기에 1이 될 것이다.
- 그리고 할당 가능한 IP 주소 중 가장 작은 값이기에 네트워크 IP를 제외하면
- 255.255.255.129가 되는데 할당 받은 대역에 넣으면
- 답은 192.168.5.129가 된다.
- C 클래스 192.168.5.0 대역을 할당받아 서브넷마스크 255.255.255.128로 설정 두 번째 서브네트워크에 속하면서 할당 가능한 IP 주소 중 가장 작은 값으로는?
- 문제
- 서술식이면 헷갈릴것 같아서 작성
- A는 100.100.100.0/24를 할당 받음, 최소 6개 서브넷으로 분리해, 각 네트워크엔 최소 20대 이상의 호스트가 존재하도록 하려할 때, 이때 사용해야하는 서브넷 비트의 수는?
- 우선 SIDR 표기법을 확인 후 최소 6개의 서브넷이 되기 위해선 3개의 비트를 사용해야 하기에 사용해야하는 서브넷 비트의 수는 27개가 된다.
- 여기서 주의할 점은 3개를 찾고 3을 작성할 수 있다고 생각하는데
- SIDR로 있는 24개를 모두 포함해야한다는 점.
- 그래서 24+3 = 27이 된다.
- 문제
- 서브네트ID 문제
- 10.0.0.0 네트워크 전체에서 마스크 값으로 255.240.0.0을 사용할 경우 유효한 서브네트ID는?
- 우선 240을 확인해보면 11110000으로 총 4개의 비트를 사용하기에
- 0000, 0001, 0010, 0011 ….. 1110, 1111로 총 16개의 경우가 있는데
- 이때 서브네트 ID라고 하면 해당 네트워크 아이디로 만들 수 있는 가장 처음 값으로
- 0000이면 10.0.0.0
- 0001이면 10.16.0.0
- 0010이면 10.32.0.0
- 0011이면 10.48.0.0으로 위와 같이 해당 서브넷으로 만들 수 있는 가장 처음 값이 된다.
- 우선 240을 확인해보면 11110000으로 총 4개의 비트를 사용하기에
- 문제
- A는 192.186.0.1, B는 192.168.0.65로 서로 다른 서브넷에 존재하기위해 사용해야 하는 서브넷 마스크로 가장 옳은 것은?
- 우선 00000000과 01000000으로 분리를 할 수 있는데 이때 답을 제출할 때 서브넷 마스크를 물어본 것이기에
- 답은 11000000으로 255.255.255.192가 된다.
- A는 192.186.0.1, B는 192.168.0.65로 서로 다른 서브넷에 존재하기위해 사용해야 하는 서브넷 마스크로 가장 옳은 것은?
'정보처리기사' 카테고리의 다른 글
[정보처리기사] 계산식 (2) - 프로세스, 디스크 스케줄링 (0) | 2023.07.15 |
---|---|
[정보처리기사] 계산식 (1) - 서브넷 마스크, 페이지 교체 알고리즘 (0) | 2023.07.15 |
[정보처리기사] Java 정리 (0) | 2023.07.13 |
[정보처리기사] 신기술 용어 정리 (0) | 2023.07.12 |
[정보처리기사] C 언어 정리 (0) | 2023.07.12 |