1.Routing 확인 (목적지까지 최대 30홉을 지원하고 각 구간의 네트워크 상태를 확인)
- traceroute (Linux, 33434~33439/UDP 사용) [-option] IP/Domain/Hostname
- tracert (Windows, ICMP 사용) IP/Domain/Hostname
→tcproute 등 다른 Utility 사용도 가능
(예: tracert 127.0.0.1
wildcard-tistory-fz0x1pwf.kgslb.com [xxx.xxx.222.33](으)로 가는 경로 추적:
1 1 ms 1 ms 2 ms xxx.xxx.219.1
2 * * * Request Time Out )
→ * : 패킷의 Trace 결과가 5초 이내에 도달하지 않으면 해당 왕복시간은 *로 표시
* traceroute Option
-I(대문자 i) : traceroute의 옵션으로 UDP가 아닌 ICMP를 사용하여 라우팅 추적
-n : 빠른 명령을 위한 DNS lookup 비활성
-w seconds : 응답 패킷을 수신 받기 위한 시간(Default 5초)
-q number : hop단 traceroute query수행 횟수(Default 3회)
* tracert Option
-d : tracert의 옵션으로 주소를 호스트 이름으로 확인하지 않아서 빠른 결과 확인가능
-h maximum_hops 대상 검색을 위한 최대 홉 수(Default 30홉)
-j host-list host-list에 따라 원본 라우팅을 완화(IPv4만 해당)
-w timeout 각 응답의 대기 시간 제한(밀리초)
-R 왕복 경로를 추적(IPv6만 해당).
-S srcaddr 사용할 원본 주소(IPv6만 해당).
-4 IPv4를 사용
-6 IPv6를 사용
** trace결과(*로 표시) 대응 방법
IPS(침입차단시스템), 방화벽 등의 접근통제에 의해 trace의 UDP 또는 ICMP패킷이 보안상의 이유로 차단되었거나
실제 해당 구간에 문제가 발생한 경우임
- trace한 주소가 실제 존재유무 체크, 패킷이 멈춘 곳의 IP를 네트워크팀에 확인
- trace 수행속도가 느리면 어느 지점에서 시간을 많이 잡아먹었는지 확인
2.Network Interface 확인(TCP/IP 프로토콜 진단)
(예: netstat -ant // all, port by number, tcp
프로토콜, 로컬 주소, 외부 주소, 상태, 오프로드상태 등을 출력)
* Option
-a 모든 소켓 정보를 출력(모든 연결 및 수신 대기 포트를 표시)
-b 외부와 통신하는 실행파일([]안에표시)과 프로토콜, 내외부정보를 출력
(각 연결 또는 수신 대기 포트 생성과 관련된 실행 파일을 표시)
[관리자권한으로만 수행 가능, 출력시간이 오래 걸림]
-r 라우팅 정보를 출력
-i [interval] 네트워크 인터페이스에 대한 정보를 출력
(Windows는 -i 옵션없이마지막에 interval 숫자만 주면됨)
-s 프로토콜(IP, IPv6, ICMP, ICMPv6, TCP, TCPv6, UDP 및 UDPv6)에 대한 통계 정보를 출력
-n 외부 네트워크 정보(IP, Port)를 숫자로 출력
-e 이더넷 통계를 표시(인터페이스 통계, -s 옵션과 함께 사용가능)
-o 각 연결의 소유자 프로세스 ID를 출력
-t TCP만 출력
-u UDP만 출력
**State 필드정보
6.네트워크 > TCP Diagram 참조 (https://roby.tistory.com/category/6.%EB%84%A4%ED%8A%B8%EC%9B%8C%ED%81%AC)
**상세활용 참조블로그
김선광의 IT블로그 : https://blog.naver.com/sunkwang0307/222601632550
3. Ping (접속할 host가 정상 운영되고 있는지 확인, ICMP 사용)
- ping [-option] IP/Domain/Hostname
(예: ping 127.0.0.1 -t //수동으로 멈출때까지 반복 수행, Default 4회)
* Option
-t : Ctrl+C로 중지 할 때까지 패킷 전송
(예: ping 127.0.0.1 -t)
-i(interval) : Ping 주기 지정 옵션(Default 1초)
(예: ping 127.0.0.1 -i 0.5 //0.5초 주기 패킷 송부)
-s : 전송 패킷 Size를 지정 (Windows : -l)
(예: ping 127.0.0.1 -s 100 //100byte 크기 패킷 송부)
-w : 정한 시간동안 패킷 전송(Windows : 응답 대기시간-밀리초)
(예: ping 127.0.0.1 -2 10 // 10초동안 패킷 전송)
-c(count) : 전송할 패킷 수 지정 (Windows : 없음)
(예: ping 127.0.0.1 -c 10 // 패킷을 10번 전송)
-D : 결과 앞에 타임스탬프 출력 (Windows : 없음)
(예: ping 127.0.0.1 -D)
-f(flood mode) : 빠른 속도로 패킷 전송하여 상태 확인 (Windows : 없음)
(예: ping 127.0.0.1 -f)
-O : 전송한 패킷에 대한 응답 패킷을 출력, 어디서 오류 발생했는지 출력 (Windows : 없음)
(예: ping 127.0.0.1 -O)