1. DHCP 동작에 대한 추가 실습
⦁ 2개의 DHCP server가 설치되어 있을 경우, 이들 중 어떤 server를 우선적으로 선택하는지를 확인하는 실습
- Wireshar에서 filter를 bootp를 한 뒤 server가 2개 일 때 DHCP packet들을 수집하면 ex) 192.168.52.64, 192.168.52.68이 서버인 것을 알 수 있다. 패킷을 보면 처음 client가 Discovert message를 broadcast망을 통해서 전송하면 이 패킷을 먼저 수신하는 server가 Offer message를 전송 하게 된다. 그럼 client는 이 Offer에 대한 Request message를 전송 하게 되고 그 후 Offer message를 전송한 server에서 ACK message를 client로 전송 하게 되면 client는 그 정보에 대한 ip가 할당 된다. 서버가 하나 일 경우 패킷 수집 되는 순서는 (Discover → Offer → Request → ACK)이지만 서버2개 일 때 패킷 수집 되는 순서는 위와 같다. 왜 이렇게 수집되는지 생각해보니 client는 먼저 온 offer에 대해서 request를 보낸다. 그 후 다른 서버에서 다른 offer가 발생 되면 처음 offer를 전송했던 서버가 내가 전송 했다는 것을 알려 주기 위해 offer를 한번 더 보내는 것 같다. 그 후 request에 대해 ACK를 전송하게 되고 다른 서버에서는 offer를 보냈는데 client에서 응답이 없으니 offer를 계속 보내거나 마냥 기다리는 것을 방지하기 위해 한번 더 ACK를 전송 하는 것 같다. 새로 ip를 할당 받기 때문에 위에 서버 1개 일 때와는 다른 ip주소를 할당 받은 것을 알 수 있다.
⦁ IP를 자동으로 받은 client는 IP를 renew하기 위해 다시 DHCP server와 통신을 하는데 이때 발생되는 패킷들은 처음 IP를 받기 위해 발생되는 패킷들과 무엇이 다른지 확인하는 실습
- 처음 ip를 할당 받기 위해 전송 했던 request와 ack packet들이다. IP영역을 보면 알 수 있듯 Destination 영역이 broadcast망인 것을 확인 할 수 있고, Source영역은 client는 0.0.0.0의 값이 server는 자신의 ip주소가 저장되어 있다.
- 할당 후 renew하기 위한 request와 ack packet은 할당 전에 할당 하기 위한 request와 ack packet들과는 다른 점이 있는데 바로 IP영역에서 Source영역과 Destination영역에 저장되어있는 값이 다르다. 할당 하고 난 후 발생한 패킷들이기 때문에 처음과 같이 broadcast망으로 전송하지 않고 client와 server에 할당되어있는 각각의 ip주소로 통신 하는 것을 알 수 있고 request영역의 client IP address값이 자신에게 할당되어 있는 ip주소가 저장되어 있는 것을 알 수 있다.
⦁ IP를 자동으로 받은 client의 network cable을 뺏다가 다시 장착했을 경우, client는 server와 통신을 하는지 한다면 어떠한 메시지들이 오고 가는지를 확인
- network cable을 빼고 난뒤 다시 장착했을 때 발생하는 packet은 처음에 ip할당받기 위한 discover과 offer이 발생하지 않는 이유는 client가 종료된 것이 아니기 때문에 client와 server에 각각에 대한 정보가 테이블에 저장되어 있다. 이 때문에 바로 request를 보내고 ack를 전송한다. client의 전원이 종료되면 client와 server는 각각에 대한 정보들을 테이블에서 삭제가 될 것이고 처음부터 ip를 할당 받아야 될 것 이다.
Request packet, ACK packet, NAK packet이 오고가는데 처음 request packet에 대한 정보를 보면 client는 자신의 ip를 모르기 때문에 ip를 할당 받기 위하여 request를 보낸다. 이때 discover을 보내지 않는 이유는 network cable을 빼기 전 dhcp server가 존재하는 것을 알고 있었기 때문에 하지 않는다. 이 때 request를 보낼 때 broadcast망을 통해서 보낸다.
- 그 후 ACK가 처음 할당 해준 server에서 오는데 이 때 전과 같은 ip에 대한 정보를 알려 준다.
- 그 후 NAK가 오는데 이것은 할당해준 server가 아닌 다른 server에서 오는 packet이다. 이 packet은 NAK는 네트워크 상에 오류가 있을경우나 특정 경우가 발생할 경우 발생하는데 이 때에는 자신은 ip를 할당을 못해준다는 것을 알려준다.
- 마지막으로 ACK가 한번 더 발생한다. 이 이유는 NAK가 발생하였기 때문이다. NAK도 broadcast망을 통해서 전송이 되는데 이 NAK을 받은 server가 내가 ip를 할당 해주었다는 것을 알려주기 위하여 발생하였다.
⦁ IP를 자동으로 받은 client가 재부팅을 했을 경우, client는 server와 통신을 하는지 한다면 어떠한 메시지들이 오고 가는지를 확인
- client의 전원을 껏다 켰을 때 server측 컴퓨터에서 수집한 패킷들은 client가 재부팅이 되었기 client와 server는 각각에 대한 정보를 가지고 있지 않게 된다. 따라서 client는 처음부터 ip를 할당 받아야 하기 때문에 Discover → Offer → Request → ACK 순으로 패킷이 발생한다.
- 처음부터 ip를 할당 받기 때문에 모든 패킷들의 Destination은 255.255.255.255으로 broadcast망을 통해서 전송이 된다.
2. 연습문제 풀이
[1] 다음중 틀린것은?
a) BOOTP와 RARP는 고정적인 IP할당방법이다.
b) DHCP는 동적인 IP할당 방법뿐만 아니라 고정적인 IP할당방법도 수행한다.
c) BOOTP와 DHCP는 동일한 포트번호를 사용한다.
d) RARP는 IP주소뿐만 아니라 DNS와 게이트웨이 주소도 알려준다.
→ RARP는 RARP와는 반대로 맥주소만 알고 있는 단말의 ip를 찾는 프로토콜이다. 이 프로토콜은 ip address만 제공해주며 다른 정보들은 제공 해주지 않는다. DNS와 게이트웨이 주소도 제공해주는 프로토콜은 DHCP이다.
[2] DHCP의 옵션 영역의 시작을 알리는 영역은 _______이다.
a) Server Name b) Boot file Name c) Magic cookie d) Transaction ID
[3] DHCP 클라이언트가 최초로 전송하는 메시지는 이다.
a) DHCP Offer b) DHCP Release
c) DHCP Request d) DHCP Discover
→ client는 자신에게 ip를 할당해 주는 server를 찾아야 하기 때문에 최초로 DHCP Discover Message를 broadcast를 통해서 전송한다.
[4] DHCP 서버가 클라이언트에 제공하는 것이 아닌 것은?
a) 클라이언트 IP주소 b) 클라이언트 MAC주소
c) 서버 IP주소 d) 서버 MAC 주소
→ client의 Ethernet MAC address는 client가 처음부터 알고 DHCP는 ip를 할당 받는 것이기 때문에 ip에 대한 정보를 모를 뿐 Ethernet MAC address에 대한 정보는 자신이 가지고 있다.
[5] DHCP메시지가 BOOTP 메시지에 포함되어 있음은 영역에서 알 수 있다.
a) boot file 영역 b) 플래그 F
c) Magic cookie d) Option type 53
→ DHCP message와 BOOTP message의 패킷형식은 동일하다. DHCP에 대한 관련 정보는 Option영역에 포함되어 있다. 따라서 이 Option영역이 있다는 것을 알면 이 패킷이 DHCP 패킷인지 BOOTP 패킷인지 구별 할 수 있는데 이 Option영역의 시작을 알려주는 영역이 Magic cookie영역이기 때문에 이 Magic cookie영역으로 알 수 있다.
[6] RARP, BOOTP등에 의한 IP할당과정에 비하여 DHCP의 장점은 무엇인가?
→ RARP와 BOOTP등에 의한 ip할당에 비하여 DHCP가 가지는 장점은 DNS, Gateway address, Subnet Mask까지 통신에 필요한 정보를 모두 할당 받을 수 있다. RARP와 BOOTP는 자신의 MAC address에 대한 ip주소만 할당 받을 수 있기 떄문에 DNS, Gateway address, Subnet Mask의 정보를 제공 받지 못한다.
[7] DHCP절차에서 사용된 IP주소의 종류를 열거하여라.
→ DHCP에서 사용되는 ip주소는 client가 자신의 ip를 몰라서 쓰는 0.0.0.0 과 Discover, Offer, Request, ACK 등을 전송하기 위한 255.255.255.255 그리고 server ip가 사용된다.
- Server ip : 말그대로 DHCP Server 자신의 ip주소를 가르킨다.
- 0.0.0.0 : 특수 ip주소로 현재 이 망에 잇는 호스트이지만 자신의 ip를 모를 때 사용한다.
- 255.255.255.255 : 위의 ip와 같이 특수 ip로서 라우터 내에 연결되어 있는 모든 네트워크 단말들에게 패킷을 전송할 때 사용한다.
'IT > 통신프로토콜 실습&연습문제' 카테고리의 다른 글
통신프로토콜 DNS(2) (0) | 2016.12.20 |
---|---|
통신프로토콜 DNS(1) (0) | 2016.12.19 |
통신프로토콜 DHCP(1) (0) | 2016.12.18 |
통신프로토콜 UDP와 TFTP (0) | 2016.12.18 |
통신프로토콜(ICMP)(1) (0) | 2016.12.17 |