ARP(Address Resolution Protocol)란?
- 같은 네트워크 대역(정확히는 LAN 구간)에서 통신을 하기 위해 필요한 MAC 주소를 IP주소를 이용해서 알아오는 프로토콜
- 짧게는 논리적인 주소(IP)를 이용해 물리적인 주소(MAC)를 알아오는 프로토콜
- Hardware type(HTYPE) : 네트워크 유형을 뜻하지만 일반적으로 사용되는 Ethernet 환경은 0x0001 으로 세팅
- Protocol type(PTYPE) : 프로토콜을 정의합니다. IPv4의 경우 0x0800 으로 셋팅되며, 아직 IPv6는 거의 사용되지 않기 때문에 보통 0x0800 으로 세팅
- Hardware Address Length : 하드웨어 주소(MAC Address) 길이를 정의하며 Ethernet 환경의 경우 6byte로 세팅
- Protocol Address Length : 프로토콜의 길이를 정의하며 IPv4는 4 byte로 세팅. Protocol type 에서 설명한것과 같이 아직 IPv6는 거의 사용되지 않기 때문에 보통 IPv4인 4byte 세팅이 고정적임
- Opcode : ARP 패킷이 요청(Request) 또는 응답(Reply)에 따라 값이 바뀌게 되고 요청의 경우 1, 응답의 경우 2가 세팅
- Source Hardware Address : 출발지 MAC 주소
- Source Protocol Address : 출발지 IP 주소
- Destination Hardware Address : 목적지 MAC 주소
- Destination Protocol Address : 목적지 IP 주소
ARP 명령어 (Windows)
ARP -s inet_addr eth_addr [if_addr]
ARP -d inet_addr [if_addr]
ARP -a [inet_addr] [-N if_addr] [-v]
-a 현재 프로토콜 데이터를 질문하여 현재 ARP 항목을 표시합니다.
inet_addr을 지정할 경우 지정한 컴퓨터의 IP 주소와
물리적 주소만 표시합니다. 둘 이상의 네트워크 인터페이스가
ARP를 사용하는 경우 각 ARP 테이블에 대한 항목을
표시합니다.
-g -a와 동일합니다.
-v 세부 정보 표시 모드에서 현재 ARP 항목을 표시합니다. 올바르지 않은
모든 항목과 루프 백 인터페이스의 항목을 표시합니다.
inet_addr 인터넷 주소를 지정합니다.
-N if_addr if_addr로 지정한 네트워크 인터페이스에 대한 ARP 항목을
표시합니다.
-d inet_addr로 지정한 호스트를 삭제합니다. inet_addr에서
와일드카드 *를 사용하면 모든 호스트를 삭제할 수 있습니다.
-s 호스트를 추가하고 인터넷 주소 inet_addr을 물리적 주소
eth_addr과 연결합니다. 물리적 주소는 하이픈으로
분리된 6바이트 16진수의 형태로 제공됩니다. 항목은
영구적으로 지속됩니다.
eth_addr 물리적 주소를 지정합니다.
if_addr 있을 경우 주소 변환 표를 수정해야 할 인터페이스의
인터넷 주소를 지정합니다.
없을 경우 적용 가능한 첫 번째 인터페이스를 사용합니다.
예:
> arp -s 157.55.85.212 00-aa-00-62-c6-09 .... 정적 항목을 추가합니다.
> arp -a .... ARP 표를 표시합니다.
ARP 명령어 (Linux)
Usage:
arp [-vn] [<HW>] [-i <if>] [-a] [<hostname>] <-Display ARP cache
arp [-v] [-i <if>] -d <hostname> [pub][nopub] <-Delete ARP entry
arp [-vnD] [<HW>] [-i <if>] -f [<filename>] <-Add entry from file
arp [-v] [<HW>] [-i <if>] -s <hostname> <hwaddr> [temp][nopub] <-Add entry
arp [-v] [<HW>] [-i <if>] -s <hostname> <hwaddr> [netmask <nm>] pub <-''-
arp [-v] [<HW>] [-i <if>] -Ds <hostname> <if> [netmask <nm>] pub <-''-
-a display (all) hosts in alternative (BSD) style
-e display (all) hosts in default (Linux) style
-s, --set set a new ARP entry
-d, --delete delete a specified entry
-v, --verbose be verbose
-n, --numeric don't resolve names
-i, --device specify network interface (e.g. eth0)
-D, --use-device read <hwaddr> from given device
-A, -p, --protocol specify protocol family
-f, --file read new entries from file or from /etc/ethers
<HW>=Use '-H <hw>' to specify hardware address type. Default: ether
List of possible hardware types (which support ARP):
strip (Metricom Starmode IP) ash (Ash) ether (Ethernet)
tr (16/4 Mbps Token Ring) tr (16/4 Mbps Token Ring (New)) ax25 (AMPR AX.25)
netrom (AMPR NET/ROM) rose (AMPR ROSE) arcnet (ARCnet)
dlci (Frame Relay DLCI) fddi (Fiber Distributed Data Interface) hippi (HIPPI)
irda (IrLAP) x25 (generic X.25) infiniband (InfiniBand)
'와사비크래커 IT Tip > 네트워크' 카테고리의 다른 글
Well Known Port 정리 (1) | 2022.09.01 |
---|---|
[네트워크] 무선 네트워킹 (0) | 2020.08.13 |
[네트워크] 라우터 (Router) (0) | 2020.08.13 |
[네트워크] 스위치 & 브리지 (0) | 2020.08.12 |
[네트워크] IP ADDRESS와 DNS (0) | 2020.08.12 |