검색결과 리스트
글
라우팅 경로를 찾는 traceroute, tracepath
traceroute 를 위해서는 ICMP type 11(time-execeeded) 가 필터링되어서는 안됨
1) ICMP 대신 UDP를 사용하려면
traceroute -I < trace할 서버 주소 > 또는
tracepath < trace할 서버 주소 >
2) TCP를 사용하는 traceroute 툴, lft와 tcptraceroute
lft : http://www.mainnerve.com/lft/
tcptraceroute : http://michael.toren.net/code/tcptraceroute/
lft < trace할 서버 주소 >
# lft -d 80 lug.or.kr (해당 사이트가 80포트가 열린 경우 이용)
Tracing ___________________________.
TTL LFT trace to 211.214.161.175:80/tcp
1 192.168.123.254 1.4ms
... 중략 ...
9 211.58.252.150 23.2ms
10 211.108.63.222 21.2ms
11 218.38.58.22 20.6ms
12 [target] 211.214.161.175:80 75.9ms
lft에서 네트워크명, AS번호까지 표시하도록 하려면 -N옵션을 사용하면 된다.
# lft -N -d 80 lug.or.kr
Tracing ____________________________________________________________________
LFT can't seem to round-trip. Local packet filter in the way?
TTL LFT trace to 211.214.161.175:80/tcp
1 [IANA-CBLK1] 192.168.123.254 13.2ms
... 중략 ...
9 [APNIC-CIDR-BLK2/HANANET-DONGJAK-KR] 211.58.252.150 24.2ms
10 [APNIC-CIDR-BLK2/WULSANSO-KR] 211.108.63.222 25.0ms
11 [APNIC4/HANANET-IDC-NGENE-KR] 218.38.58.22 39.4ms
** [80/tcp failed] Try alternate options or use -V to see packets.
2. 네트워크 상태확인하는 netstat
자주 사용하는 옵션 (워낙 옵션을 조합해서 자주 사용하므로 정리할 필요 있음)
-n : 호스트명, 포트명을 lookup하지 않고 그대로 IP, Port번호로 보여준다.
-a : 모든 네트웍 상태(listening, non-listening)를 보여준다.
-t : TCP 프로토콜만
-u : UDP 프로토콜만
-p : 해당 포트를 사용하는 프로그램과 프로세스ID(PID)를 보여줌
(솔라리스에서는 ARP 테이블을 보여줌)
-s : 프로토콜별(IP, ICMP, TCP, UDP 등)로 통계를 보여줌
-c : 1초 단위로 continuous하게 보여줌 (지속적인 접속 변화를 확인해야할 때 유용)
-r : 라우팅 테이블을 보여줌. route 명령처럼
netstat -nlp Listening(l)중인 포트/소켓을 해당 PID와 프로세스명과 함께
netstat -tn TCP 접속 상태
netstat -un UDP 접속 상태
netstat -rn routing 테이블
netstat -ntp TCP 접속 상태를 해당 PID와 프로세스명과 함께
netstat -atnp 모든 TCP 접속상태를 해당 PID와 프로세스명과 함께
netstat -s 통계
netstat -c -t TCP 접속을 continuous 하게 보여줌
# netstat -atnp
Active Internet connections (servers and established)
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
tcp 0 0 0.0.0.0:515 0.0.0.0:* LISTEN 671/lpd Waiting
tcp 0 0 127.0.0.1:3333 0.0.0.0:* LISTEN 738/avmilter
tcp 0 0 0.0.0.0:3306 0.0.0.0:* LISTEN 720/mysqld
... 생략 ...
3. fuser : 파일이나 소켓을 사용하는 프로세스 ID를 보여줌
1) TCP 25(mail)포트를 사용하는 PID를 보여줌
# fuser -n tcp 25
mail/tcp: 757
2) http 포트를 사용하는 PID, USER, 명령어를 보여줌
(-vn을 -nv 처럼 사용해서는 안됨
# fuser -vn tcp http
USER PID ACCESS COMMAND
http/tcp root 1652 f.... httpd
root 1659 f.... httpd
... 생략 ...
3) /dev/hdb1 을 사용하는 사용자와 PID, 명령어
(umount해야할 때 사용중이라 나올 때 유용하게 쓰임)
# fuser -vm /dev/hdb1
USER PID ACCESS COMMAND
/dev/hdb1 truefeel 1669 f.... xmms
truefeel 1670 f.... xmms
4. 패킷 모니터링을 위한 트래픽 덤프 툴 tcpdump
1) eth0 인터페이스로 오고가는 트래픽 정보를 보여줌(-i eth0 옵션없으면 eth0임)
tcpdump
2) 192.128.1.1 host로 오고가는 또는 제외한 트래픽
tcpdump host 192.128.1.1
tcpdump src host 192.128.1.1
tcpdump dst host 192.128.1.1
tcpdump not host 192.128.1.1
3) 192.128.1.1과 192.128.1.2 사이를 오고가는 트래픽만
tcpdump host 192.128.1.1 and 192.128.1.2
4) ICMP, ARP, UDP 프로토콜만, ICMP 프로토콜 20개만
tcpdump icmp -i eth0
tcpdump arp
tcpdump udp
tcpdump icmp -c 20
5) 웹 포트로 오고가는 패킷만
tcpdump port 80
6) dhcp 패킷 확인할 때
# tcpdump -v -s 1500 port 67 or port 68
tcpdump: listening on eth0
01:17:16.803166 0.0.0.0.bootpc > 255.255.255.255.bootps: [udp sum ok]
xid:0x29b28363 vend-rfc1048 DHCP:REQUEST RQ:truefeel
PR:SM+BR+TZ+DG+DN+NS+HN+YD+YS+NTP [tos 0x10] (ttl 16, id 0, len 328)
01:17:16.806441 192.168.1.254.bootps > 255.255.255.255.bootpc:
... 생략 ...'
[출처] [리눅스 명령어] 모니터링에 유용한 명령어|작성자 참좋은날
'Linux > Open tools' 카테고리의 다른 글
Ubuntu에서 Eclipse CDT를 사용하여 Autotools Project 만들기 (Part 1) (0) | 2012.06.04 |
---|---|
리눅스 네트워크 (0) | 2012.05.31 |
네트워크 진단 하기 - 각종툴 (0) | 2012.05.31 |
nslookup 명령어 사용예 (0) | 2012.05.31 |
nslookup 사용법 (0) | 2012.05.31 |
RECENT COMMENT