YouTube 채널 따라하면서 배우는 it의 네트워크 관련 강의를 들으며 정리한 글입니다.
도서 모두의 네트워크를 읽으며 정리한 내용이 일부 포함될 수 있습니다.
그 밖의 Reference들은 글 마지막에 따로 표기해 두었습니다.
2계층은 하나의 네트워크 대역, 즉 같은 네트워크 상에 존재하는 여러 장비들 중에서 장비 A가 장비 B에게 보내는 데이터를 전달하는 계층입니다.
추가적으로 알아 두어야 할 개념으로 오류제어, 흐름제어가 있습니다.
2계층은 하나의 네트워크 대역 = LAN에서만 통신할 때 사용됩니다.
다른 네트워크와 통신할 때는 항상 3계층이 도와주어야 합니다. 3계층의 주소와 3계층의 프로토콜을 이용하여야만 다른 네트워크와 통신이 가능합니다.
물리적인 주소라고 부릅니다.
MAC 주소를 사용한 통신
이더넷 헤더 구조
만약에 00-99-88-77-66-55
앞에 6개는 OUI IEEE에서 부여하는 일종의 제조사별 식별 ID로 구성합니다.
뒤에 6개는 고유번호 이 두개가 합해져서 MAC주소를 구성합니다.
Ethernet이라는 프로토콜이 존재합니다.
Ethernet 안에는 쉽게 생각하면 보내는 쪽, 받는 쪽에 대한 MAC주소가 들어가 있습니다. 14바이트. 6(Destination Address) + 6(Source Address) + 2(Ethernet Type)
Ethernet Type : 데이터에 들어있는 프로토콜의 정보를 담고 있는 정보입니다. 상위 프로토콜에 뭐가 들어가는지 알려주는 정보입니다.
❯ ifconfig | egrep "(^\\w|ether)" ─╯
lo0: flags=8049<UP,LOOPBACK,RUNNING,MULTICAST> mtu 16384
gif0: flags=8010<POINTOPOINT,MULTICAST> mtu 1280
stf0: flags=0<> mtu 1280
anpi0: flags=8863<UP,BROADCAST,SMART,RUNNING,SIMPLEX,MULTICAST> mtu 1500
ether 52:71:78:4e:bb:54
anpi1: flags=8863<UP,BROADCAST,SMART,RUNNING,SIMPLEX,MULTICAST> mtu 1500
ether 52:71:78:4e:bb:55
ap1: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> mtu 1500
ether 72:ed:3c:3a:15:39
en3: flags=8863<UP,BROADCAST,SMART,RUNNING,SIMPLEX,MULTICAST> mtu 1500
ether 52:71:78:4e:bb:34
en4: flags=8863<UP,BROADCAST,SMART,RUNNING,SIMPLEX,MULTICAST> mtu 1500
ether 52:71:78:4e:bb:35
en1: flags=8963<UP,BROADCAST,SMART,RUNNING,PROMISC,SIMPLEX,MULTICAST> mtu 1500
ether 36:ab:56:ee:3a:00
en2: flags=8963<UP,BROADCAST,SMART,RUNNING,PROMISC,SIMPLEX,MULTICAST> mtu 1500
ether 36:ab:56:ee:3a:04
en0: flags=8863<UP,BROADCAST,SMART,RUNNING,SIMPLEX,MULTICAST> mtu 1500
ether 50:ed:3c:3a:15:39
awdl0: flags=8943<UP,BROADCAST,RUNNING,PROMISC,SIMPLEX,MULTICAST> mtu 1500
ether ae:dd:ae:29:76:e2
bridge0: flags=8863<UP,BROADCAST,SMART,RUNNING,SIMPLEX,MULTICAST> mtu 1500
ether 36:ab:56:ee:3a:00
llw0: flags=8863<UP,BROADCAST,SMART,RUNNING,SIMPLEX,MULTICAST> mtu 1500
ether ae:dd:ae:29:76:e2
utun0: flags=8051<UP,POINTOPOINT,RUNNING,MULTICAST> mtu 1380
utun1: flags=8051<UP,POINTOPOINT,RUNNING,MULTICAST> mtu 2000
utun2: flags=8051<UP,POINTOPOINT,RUNNING,MULTICAST> mtu 1000
utun3: flags=8051<UP,POINTOPOINT,RUNNING,MULTICAST> mtu 1380
utun4: flags=8051<UP,POINTOPOINT,RUNNING,MULTICAST> mtu 1380
utun5: flags=8051<UP,POINTOPOINT,RUNNING,MULTICAST> mtu 1380
utun6: flags=8051<UP,POINTOPOINT,RUNNING,MULTICAST> mtu 1380
utun7: flags=8051<UP,POINTOPOINT,RUNNING,MULTICAST> mtu 1380
utun8: flags=8051<UP,POINTOPOINT,RUNNING,MULTICAST> mtu 1380
wireshark로 통신하는 것이 가능합니다.
이더넷 프로토콜, 14바이트 상위 프로토콜까지 알 수 있습니다.
16진수 0~9, A B C D E F로 모든 수를 표현한 숫자