ํฐ์คํ ๋ฆฌ ๋ทฐ
๋คํธ์ํฌ์ ๊ณ์ธต์์ 2 ๊ณ์ธต์ MAC ์ฃผ์๋ฅผ ์ฌ์ฉํ๊ณ , 3 ๊ณ์ธต์ IP ์ฃผ์๋ฅผ ์ฌ์ฉํ๋ค. ๋ฐ๋ผ์ ๊ฐ ๊ณ์ธต์์๋ ์ฌ์ ์ ์ ์๋ ๊ท๊ฒฉ (MAC, IP)๋ฅผ ์ฌ์ฉํ์ฌ ํต์ ์ด ๊ฐ๋ฅํ๋ค. ๋ง์ฝ, 2-3 ๊ณ์ธต์ผ๋ก ํต์ ์ด ํ์๋ค๋ฉด ARP, RARP๋ฅผ ํตํด ๊ฐ ๊ณ์ธต์์ ์ฌ์ฉํ๋ ์ฃผ์๋ฅผ ๋ณํํ์ฌ์ผ ํ๋ค. ์ด์ ARP์ ๋ํด ์์๋ณด๊ณ , ์ค์ ์ฃผ๊ณ ๋ฐ๋ ํจํท์ ๋ถ์ํด๋ณด๊ณ ์ ํ๋ค.
ARP?
ARP๋ `Address Resolution Protocol`์ ์ฝ์๋ก, ๋ง ๊ทธ๋๋ก ์ฃผ์ ๊ฒฐ์ ํ๋กํ ์ฝ์ด๋ค. ARP๋ฅผ ์ดํดํ๊ธฐ ์ํด์๋ 4๊ฐ์ง์ ์ฉ์ด(Term)์ ๋ํด ์ดํดํ๋ฉด ๋ณด๋ค ์ฝ๊ฒ ์ดํดํ ์ ์๋ค.
- Cache
- ARP๋ฅผ ํตํด MAC ์ฃผ์๋ฅผ ํ์ธ ํ, ARP Table์ ์ ๋ณด๋ฅผ ์ ์งํ๋ ๊ฒ
- Cache Timeout
- ARP Table์ Cache ์ ์ง ์๊ฐ์ ์๋ฏธํจ
- Request
- Broadcast๋ฅผ ํตํด, Target์ MAC ์ฃผ์๋ฅผ ์์ฒญํจ
- Reply
- Broadcast๋ฅผ ๋ฐ์ ํธ์คํธ ์ค, Target์ ํด๋นํ๋ ๊ฒฝ์ฐ Reply๋ฅผ ๋ณด๋
- ๋๋จธ์ง ํธ์คํธ๋ค์ ๋ฌด์ํจ
How ARP works?
์ฒซ ๋ฒ์งธ๋ ์์ `์ฉ์ด`์์ ์ธ๊ธํ ๊ฒ ์ฒ๋ผ, `Request`, `Reply`๋ฅผ ํตํด MAC ์ฃผ์๋ฅผ ์์๋ด๋ ๊ฒ์ด๋ค. ๋ ๋ฒ์งธ๋ `Table lookup`์ผ๋ก ํ ์ด๋ธ์ ์บ์๋ฅผ ํ์ธํ๋ ๊ฒ์ด๋ค.
Type of ARP
- Proxy ARP
- ํธ์คํธ๊ฐ ARP Request๋ฅผ ๋ณด๋ด๋ฉด, ๋ผ์ฐํฐ์ MAC ์ฃผ์๋ฅผ ์๋ ค์ค๋ค.
- ํด๋น ๊ธฐ๋ฅ์ ํตํด, ๋์ผํ ๋คํธ์ํฌ๋ผ๋ฉด ๋ผ์ฐํ ์ฒ๋ฆฌ๊ฐ ํ์ ์๋ค.
- ARP ํธ๋ํฝ ์ฆ๊ฐ์ Host์ IP-to-MAC ์ฃผ์๋ฅผ ๋งคํํ๊ธฐ ์ํ ํ ์ด๋ธ์ ํฌ๊ธฐ๊ฐ ์ปค์ง๋ค.
- Inverse ARP
- Frame Relay์์ ์ฌ์ฉ๋๋ค.
- Frame Relay๋ ํ๋์ ์ธํฐํ์ด์ค์ ๋ค์์ ์ฅ๋น๊ฐ ์ ์ํ๋ ๊ฒฝ์ฐ๋ฅผ ๋งํ๋ค.
- ์๋ฅผ ๋ค๋ฉด ISP(์ธํฐ๋ท ์๋น์ค ๊ณต๊ธ์)์์ ์ฌ์ฉ๋๋ค.
- IP์ฃผ์๋ฅผ ํตํด MAC์ฃผ์๋ฅผ ์์ฒญํ๋ ๊ฒ์ด ์๋ DLCI(Data Link Connection Identifier)๋ฅผ ์์ฒญํ๋ค.
- Frame Relay์์ ์ฌ์ฉ๋๋ค.
- Gratuitous ARP
- ์ด๋ฆ๊ณผ ๊ฐ์ด, ์ผ๋ฐ์ ์ผ๋ก ์ฌ์ฉํ๋ ๊ฒ์ด ์๋ ์์ ์ IP๋ฅผ Target์ผ๋ก ํ์ฌ ์ฌ์ฉํ๋ค.
- ์์ ์ IP๋ฅผ Target์ผ๋ก ํ๋ ์ด์ ๋ ๋ค์๊ณผ ๊ฐ์ ์ด์ ๋๋ฌธ์ด๋ค.
- IP ์ฃผ์ ์ถฉ๋ ๊ฐ์ง
- ARP Table Refresh
ARP Packet Analysis
๋ถ์ ๋ฐฉ๋ฒ์ `Ubuntu 16.04 - desktop (Virtual box)`์์ ๋ค์๊ณผ ๊ฐ์ด ์งํํ์๋ค.
- apr -d <host name>์ ํตํด ARP Table cache ์ญ์
- arp -a๋ฅผ ํตํด ARP Table ํ์ธ
- ์ด๊ธฐํ๋ ์ํ์์, wireshark๋ฅผ ํตํด packet ์บก์ฒ
Set ENV
$ sudo apt install wireshark
$ sudo usermode -a -G wireshark <USER_NAME>
Capture packet
`arp -d <HOST NAME>`์ ํตํด, ARP Table์ ์ด๊ธฐํํ ์ํ์์ ping์ ๋ณด๋ด๊ฒ ๋๋ฉด, wireshark์ ARP Packet์ด ์บก์ณ๋๋ค. ์บก์ณ๋ ํจํท์ ์ง์ ๋ถ์ํ ์ ์๋ค. ๋ํ ์น์ ํ wireshark๋ ์ด๋ค ๊ฐ์ ์ฃผ๊ณ ๋ฐ์๋์ง ์น์ ํ ์๋ ค์ค๋ค.
์ฒซ ๋ฒ์งธ ์ค๋ถํฐ ๋นจ๊ฐ ๋ค๋ชจ ๋ฐ์ค์ ๋ฉ์์ง ๊ฐ์ ๋ถ์ํ๋ฉด ๋ค์๊ณผ ๊ฐ๋ค.
- `08 06` : 0x0806๋ ARP ํ๋กํ ์ฝ์ ์๋ฏธํ๋ค.
- `00 01` : Hardware type์ ์๋ฏธํ๋ฉฐ, 00 01์ Ethernet์ ์๋ฏธํ๋ค.
- `06` : Hardware size
- `04` : Protocol size
- `00 01` : Opcode์ด๋ค. 0x01์ Request, 0x02๋ Reply๋ฅผ ์๋ฏธํ๋ค. 0x03, 0x04๋ RARP์ Request, Reply๋ฅผ ์๋ฏธํ๋ค.
- `08 00 27 d0 d7 8b` : Sender์ MAC ์ฃผ์์ด๋ค.
- `c0 a8 00 0c` : Sender์ IP ์ฃผ์์ด๋ค.
- `00 00 00 00 00 00` : Target์ MAC ์ฃผ์์ด๋ค. ์์ง ๊ฐ์ ์ ์ ์์ผ๋ฏ๋ก ๋น ๊ฐ์ด๋ค.
- `c0 a8 00 01` : Target์ IP ์ฃผ์์ด๋ค.
wireshark๋ ์ด๋ฌํ ํจํท์ ๋ด์ฉ์ ์์ ๊ฐ์ด ์๊ธฐ ์ฝ๋๋ก ํ๊ธฐํด์ค๋ค. ์์ Request ํจํท ๋ฉ์์ง๋ฅผ ๋ถ์ํ ๊ฒ๊ณผ ๋์ผํ๋ค๋ ๊ฒ์ ์ ์ ์๋ค.
'๐๏ธโโ๏ธ ๊ธฐ๋ฐ ๋ค์ง๊ธฐ > ๋คํธ์ํฌ' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
๋คํธ์ํฌ: Net-SNMP (0) | 2021.02.16 |
---|---|
๋คํธ์ํฌ: SNMP (0) | 2021.02.07 |
๋คํธ์ํฌ: ์ค์์น (0) | 2020.12.10 |
๋คํธ์ํฌ: ํ๋ธ (0) | 2020.12.09 |
๋คํธ์ํฌ: ๋ผ์ฐํฐ (0) | 2020.11.27 |