뭉크테크
인터넷 자동화 설정을 위한 DHCP 본문
인터넷 사용 전에 해야 할 설정
- IP주소
- 서브넷 마스크
- 게이트웨이 IP 주소
- DNS 주소
우리가 인터넷을 사용하려고 하면 설정해야 할게 되게 많다. 기본적으로 호스트를 식별해주는 유니크한 값인 IP주소를 설정해야 한다. IPv4에서 32bit 어떤 숫자값이 나와야 한다. 근데 그 값이 어떤 값인지 우리는 알 수 없다. 무엇보다도 우리가 인터넷이라는 것을 돈 주고 사용하는데 그 인터넷 서비스를 제공해주는 회사를 ISP(Internet Service Provider)라고 한다.
즉, IPS쪽에서 IP주소들을 가지고 있는데 이 주소들중에 1개를 부여해준다. 다음에 서브넷 마스크 설정을 해줘야 한다. 그리고 무엇보다도 게이트웨이 IP 주소 설정을 해줘야 한다. 즉, IP주소, 서브넷마스크, 게이트웨이 설정까지 L3에 대한 설정이다.
그리고 추가적으로 L4설정인 DNS설정을 해줘야 한다. 그래야 네이버를 접속을 하면 네이버의 IP주소를 DNS서버가 알려주게 되어 있다. 그래서 이런것들을 우리가 인터넷을 사용하려면 원래는 직접 설정해야 한다.

그런데 보통 사람들은 PC를 사용하면서 이런 설정을 해본 기억이 있지는 않을 것이다. 그러나 실제로 네트워크 서비스 안내를 하다보면, 저 화면 서비스 안내를 지겹도록 할 것이다. 실제로 내가 공군 CERT 병으로 복무할 당시, 사용자분들에게서 네트워크 설정 안내 전화를 많이 받아봤다. IP는 제대로 설정했지만, DNS 서버 주소를 잘못 입력하셔서 안되시는 분들이 종종 계셨다.
그러나 보통 우리는 자동설정이라는 것을 이용한다. 근데 여기서 자동이라고 한다 하는 것은 DHCP를 이용하겠다는 것인데 여기서 DHCP가 무엇일까?
DHCP
- DHCP(Dynamic Host Configuration) 체계는 주소를 할당하는 서버와 할당받을는 클라이언트로 구성된다.
- 복잡한 인터넷 설정을 자동으로 해준다고 볼 수 있는데 핵심은 내가 사용할 IP주소를 서버가 알려준다는것에 있다.
인터넷을 쓰기 위해서는 호스트에 대한 TCP/IP설정을 잡아줘야 한다. 즉, IP주소 + 게이트웨이 + 서브넷 마스트 + DNS 설정을 해줘야 인터넷을 이용할 수 있다. 그런데 DHCP를 이용하게 되면 자동으로 된다는게 핵심이다. 그러면 어떻게 자동으로 되는걸까?
DHCP는 구성이 클라이언트와 서버로 구성이 되는데 이 자동이라고 할만한 모든 설정이 서버가 가지고 있다. 그래서 클라이언트가 접속을 하면 서버가 설정을 자동으로 하게 알려준다. 그래서 당연히 네트워크상 서버가 존재해야 하고 서버한테 필요정보를 서버에 요청하면 자동으로 응답을 해준다. 여기서 DHCP의 Dynamic은 IT에서 Runtime과 같은 말이다. 뭔가 정적으로 고정되어 있는 것이 아닌, 동적으로 뭔가 계속 바뀐다는 말이다. 동적이라는 말은 '컴퓨터 전원을 키면 뭔가 알아서 자동으로 된다.' 라는 말이다.

작동방식은 생각보다 간단하다. 위 그림에 게이트웨이의 IP를 편의상 192.168.0.1이라고 하고 서브넷 마스크를 255.255.255.0이라고 하자. 그리고 5번PC가 DHCP 서버라고 생각하자. 그런데 여기서 1번 PC가 전원이 켜졌을 때 그 때 네트워크로 Broadcast Packet이 나간다. 여기서 Broadcast에 주목하자. 그니까 쉽게 네트워크로 '우리 중에 DHCP 서버가 있니?'라고 Discovery Traffic을 보낸다.
그러면 이게 브로드캐스트가 되니까 L2 Access Switch에 도달하면 L2 Access Switch가 브로드캐스팅을 한다. 그걸 up-link로 전달하고 그 up-link에서 또 퍼진다. 즉, 브로드캐스트가 발생하면 네트워크 전체에 퍼질것이고 그 때 DHCP 서버가 응답할 것이다. 즉, 누군가 어떤 request를 하면 여기에 대해 response를 보낼 것이다. 그러면 1번 PC가 다시 요청을 해서 '저번에 192.168.0.10이라는 IP주소를 할당받았었는데 그 주소 계속 써도 되는거니?'라고 묻고 DHCP 서버가 OK라고 하면 그 주소를 계속 쓰는 것이고 안된다고 하면 새로운 IP주소를 할당 받는다. 이 DHCP 서버가 IP주소뿐만 아니라 게이트웨이, 서브넷마스크, DNS주소도 같이 준다.
즉, DHCP 서버는 이러한 정보들을 pool이라는데 관리하는데 이 pool에서 인터넷 정보를 꺼내줘서 할당을 할 때 중복을 방지하기 위해 각종 메커니즘으로 통제를 한다. 그리고 이러한 정보를 받기위해선 DHCP와 해당 PC간 같은 브로드캐스트 도메인안에 묶여야 한다.
출처
외워서 끝내는 네트워크 핵심이론 - 기초 강의 | 널널한 개발자 - 인프런
널널한 개발자 | TCP/IP에서 HTTP까지! 네트워크에 대한 기본 이론이 부족한 분들이 '외워서'라도 전공 이론을 이해하고자 희망하는 분들을 위해 준비한 강의입니다. 할 수 있습니다!, 네트워크, 외
www.inflearn.com
'네트워크' 카테고리의 다른 글
| Ping과 RTT (7) | 2025.01.09 |
|---|---|
| ARP(Address Resolution Protocol (1) | 2025.01.09 |
| TTL과 단편화 (1) | 2025.01.09 |
| Broadcast IP (0) | 2025.01.08 |
| 서브넷 마스크와 CIDR (1) | 2025.01.08 |