(3) Network Layer(네트워크 계층) - DHCP, NAT
IPv4 주소
DHCP(Dynamic Host Configuration Protocol)
- 기관에 블록 주소가 할당되면, 관리자는 각각의 호스트나 라우터에 수동으로 주소를 할당할 수 있다
- 하지만 DHCP를 통해 주소할당을 자동으로 할 수 있다.
- DHCP는 클라이언트-서버 패러다임을 이용하는 응용 계층 프로그램으로서, TCP/IP의 네트워크 계층을 도와준다
DHCP 메시지 포맷
- Opcode, Htype, HLen, HCount, Flags, .... , Options 존재
- Opcoe : Operation code, request(1)(DHCPDISCOVER, DHCPREQUEST 등) or reply(2)(DHCPOFFER, DHCPACK 등)
- Flags : First bit defines unicast(0) or multicast(1); other 15bits는 사용되지 않음
- Options : A 64-byte field with dual purpose described in text
- Value : DHCPDISCOVER, DHCPOFFER, DHCPREQIEST, DHCPDECLINE, DHCPACK, DHCPNACK, DHCPRELEASE, DHCPINFORM
- Tag(53), Length(1), Value로 표현하며, TLV 표현 방식이라고 함
DHCP 동작
- 부팅
- Client가 DHCPDISCOVER를 Broadcast
- Server가 DHCPOFFER(이 주소 사용할거야?)
- Client가 DHCPREQUEST(이 주소 사용할게)
- SERVER가 DHCPACK(확인 응답)
- DHCP는 UDP(TCP 아님), IP를 이용하는 프로토콜임
DHCP 클라이언트의 FSM(Finite State Machine)
- 클라이언트가 주소를 받으면 임대 시간이 정해져 있어서, 50% 정도가 지나면, 다시 임대를 요청함(DHCPREQUEST를 보냄)
- RENEWING : 임대 시간의 50%가 경과하면, 클라이언트는 DHCP 서버에게 주소 임대 연장을 요청
- REBINDING : 임대 연장 요청이 실패하면, 클라이언트는 다른 서버로부터 주소를 재임대(rebinding) 받기 위해 다시 요청을 시작(INIT)
NAT(Network Address Translation)
- 대부분의 경우, 작은 네트워크에서의 인터넷의 동시접속은 많지 않음
- 사설(private) 주소와 공인(public) 주소의 매핑을 제공하고, 가성의 사설 주소를 지원하는 시스템이 NAT임
- 이 기술은 사이트 내부에서 사설 주소를 이용해 내부 통신을 하고, 인터넷의 컴퓨터와 통신을 할 때, 공인 주소를 통해 통신을 가능하게 한다
- GPT : 사설 네트워크 내의 여러 장치들이 단 하나의 공인 IP 주소를 사용하여 인터넷과 통신할 수 있도록 합니다.
- ex) Internet에 연결되어 있는 라우터의 주소테이블에서(공인 주소: 203.240.~~) 공인 주소를 사설주소로 매핑해줌
- 사설 주소를 사설 주소로 바꿔줄 수도 있고, 공인 주소를 공인 주소로 바꿔줄 수도 있다
- 10.0.0.0/8(A class) 와 같이 10점대 주소는 전부 사설 주소
- 172.16.255.255 ~ 172.31.255.255 은 B class의 사설 주소
- 192.168.0.0 ~ 192.168.255.0 은 C class의 사설 주소
- 주소 변환 표
- TCP를 주로 지원하고, UDP도 지원할 수 있음
- PAT : 포트번호 + 주소를 변경
- Public IP 1개 만으로도 65536개 연결 지원 가능
'Computer Science > 네트워크' 카테고리의 다른 글
[컴퓨터네트워크] 03. Network Layer Protocols(1) - 네트워크 계층 프로토콜 (0) | 2024.04.10 |
---|---|
[컴퓨터네트워크] 02. (4)Network Layer(네트워크 계층) - IP 패킷의 포워딩 (0) | 2024.04.07 |
[컴퓨터네트워크] 02. (2)Network Layer(네트워크 계층) - IPv4 주소 (0) | 2024.04.07 |
[컴퓨터네트워크] 02. (1)Network Layer(네트워크 계층) - 네트워크 계층 서비스 / 성능, 패킷 스위칭 (0) | 2024.04.07 |
[컴퓨터네트워크] 01. OSI 7계층과 TCP/IP (0) | 2024.04.07 |