IP (Internet Protocol) 패킷의 헤더에는 다양한 필드가 있으며, 이들 각각은 중요한 역할을 합니다. 여기서는 몇 가지 주요 필드에 대해 설명하겠습니다:
Wireshark
패킷캡쳐 , 모니터링 , 네트워크 정보 수집
IP주소 할당을 하고 IP 통신 테스트를 할 때.
ICMP 프로토콜 utility : ping, traceroute(tracert)경로추적
인터넷이 안될 때, 확인하기
1) cable 확인
2) IP주소, sm 같은 시스템내에서 통신
arp -a
3) gateway에게 ip ping test
4) 외부로 ping test ex) ping 8.8.8.8
5) DNS 서비스 확인 : nslookup ,host, dig
6) 웹브라우저에 프락시 설정, URL 오타\
gateway에게 ip ping test를 먼저 해보겠다
내 IPv4 주소는 192.168.0.222이고 기본 게이트웨이 주소가 192.168.0.1인 것 확인.
Wireshark에서 이더넷2 눌러서 들어간다.
icmp(internet control message protocol)만 필터링한다.
내 IPv4 주소는 192.168.0.222이고 기본 게이트웨이인 192.168.0.1로 ping을 보내보겠다.
그러면 Wireshark에 4번의 request와 reply가 캡쳐된다.
Stop capturing packets를 하고 바탕화면에 저장하고 들어가보면 맨 왼쪽의 번호가 보기 좋게 바뀐 것 알 수 있음.
추가 조건으로 더 필터링할 수도 있다.
구글에 핑 보내보려한다. 8.8.8.8도 되고 www.google.com도 된다.
이렇게 뜬다.
옆사람한테 핑 보내고 받아보려해서 방화벽 관련해서 설정 좀 해야한다. 인바운드는 통신이 들어오는 것이고 아웃바운드는 나가는 것인데 다음 사진을 보면 인바운드 연결을 차단해둔걸 알 수 있다.
여기서 개인/공용 부분 허용으로 바꿔준다.
옆사람 IPv4주소는 192.168.0.225이고 나는 192.168.0.222이다.
nslookup은 네트워크 관리 명령어로서, DNS(Domain Name System)를 통해 호스트 이름을 IP 주소로 변환하거나 그 반대의 작업을 수행한다.
UDP, TCP 프로토콜구조에 사용하는 Port Number은 16bit로 구성된다.
그래서 0~65535까지의 범위를 가진다.
TCP 정확하게. 패킷 데이터 손실 시에 재요청한다.
UDP는 걍 우선 보냄 신속하게.
Well-Known Ports (잘 알려진 포트): 0-1023
이 범위의 포트 번호는 특정한 서비스를 위해 IANA(Internet Assigned Numbers Authority)에 의해 예약되어 있습니다. 예를 들어, HTTP 서비스는 포트 80을, HTTPS는 포트 443을 사용합니다.
Registered Ports (등록된 포트): 1024-49151
이 범위의 포트 번호는 소프트웨어 애플리케이션에 의해 일반적으로 사용됩니다. IANA에 등록되어 있으며, 특정 애플리케이션들이 기본적으로 사용하는 포트들이 여기에 속합니다.
Dynamic or Private Ports (동적 또는 개인 포트): 49152-65535
이 범위의 포트 번호는 개인적인 또는 동적인 사용을 위해 남겨져 있습니다. 시스템에서 임시적으로 할당하거나 프로그램에서 동적으로 선택하여 사용할 수 있습니다.
ICMP (Internet Control Message Protocol)
(IP가 신뢰성 보장하진 않아서 ping 같은걸로 확인. 크게 Error reporting, Query로 구성.)
는 인터넷 프로토콜 스택의 핵심 구성요소로, 주로 네트워크 노드 간에 오류 메시지를 전달하거나 네트워크 상태 정보를 질의하는데 사용됩니다. ICMP는 IP 패킷 안에 캡슐화되어 전송됩니다.
Error Reporting (오류 보고):
ICMP는 네트워크 통신 중 발생한 다양한 오류를 보고하는데 사용됩니다.
예를 들어, "Destination Unreachable" 메시지는 목적지로 패킷을 전달할 수 없을 때 발생합니다. 이것은 목적지 호스트가 존재하지 않거나, 목적지 호스트까지의 경로가 존재하지 않을 때 발생할 수 있습니다.
또 다른 예로 "Time Exceeded" 메시지는 패킷이 너무 오래 동안 라우팅되어 TTL(Time to Live) 값이 0이 되었음을 알립니다.
Query:
ICMP는 호스트나 라우터에 대한 정보를 질의하는데도 사용됩니다.
가장 대표적인 예가 "Echo Request"와 "Echo Reply" 메시지입니다. 이들은 일반적으로 ping 명령에서 사용되며, 특정 호스트가 네트워크상에서 활성 상태인지 확인하기 위해 사용됩니다.
ICMP는 이러한 기능들을 통해 인터넷 프로토콜 스택이 정확하고 효율적으로 작동할 수 있도록 돕습니다.