반응형
0 | 1 | 2 | 3 |
Hardware Type | Protocol Type | ||
Hardware Address Length | Protocol Address Length | OP Code | |
Sender Hardware Address | |||
Sender Hardware Address | Sender Protocol Address | ||
Sender Protocol Address | Target Hardware Address | ||
Target Hardware Address | |||
Target Protocol Address |
ARP 헤더의 크기는 28 byte이다.
Hardware Type은 Ethernet 환경이면 1이 설정된다.
Protocol Type은 조회되는 프로토콜이면 IP를 조회하는 것이기 때문에 0x0800 값이다.
MAC 주소와 IP 주소의 길이는 각각 6 byte와 4 byte이기 때문에 Hardware Address Length의 값은 6이다.
Protocol Address Length의 값은 4이다.
OP 코드에 저장된 값을 통하여 ARP Request와 ARP Reply로 나눌 수 있다!!
Request이면 OP Code는 1로 설정
Reply이면 OP Code는 2로 설정된다.
IP 주소를 이용하여 MAC 주소를 찾는다는 요청인 ARP Request의 경우 Target Hardware Address를 모르기 때문에
00:00:00:00:00:00으로 설정되며 Target IP만 설정되어 전송된다.
응답을 전송하는 호스트의 경우 ARP Request로부터 상대방 IP 주소와 MAC 주소를 알 수 있기 때문에 상대방 MAC 주소로 설정되어 전송된다.
반응형
'프로그래밍 > C언어를 활용한 네트워크 해킹' 카테고리의 다른 글
Ethernet 헤더 (0) | 2019.09.05 |
---|---|
체크섬(Checksum) (0) | 2019.09.03 |
Packet Capture 라이브러리2 (0) | 2019.09.03 |
Packet Capture 라이브러리 (0) | 2019.09.03 |
RAW 소켓 (0) | 2019.09.03 |