[HP-UX] nettl 예제 (tcpdump)
작성자 관리자 작성시간 2018-04-22 01:01:12
 

nettl과 netfmt의 기본 예제입니다.

example)
# nettl -start
# nettl -tn all -e ns_ls_ip -f /tmp/test_ip
# nettl -status

# vi /tmp/filterfile
filter ip_saddr 1.7.100.54
filter ip_daddr 1.7.100.54

# netfmt -Nnl1c /tmp/test_filterfile -f /tmp/test_ip.TRC0 > /tmp/test_file
# cat /tmp/test_file

구성 정보:
운영체제 - HPUX
버전 -  TRACING
하드웨어 시스템 -
시리즈 -

답]

TRACE INFO 갖기
다음은 nfs 클라이언트에서 mount 명령어를 수행하면서 nfs 서버에서 trace를 취하는 예제입니다.
이것은 기본 예제이므로, 개별 옵션 이해를 위해 nettl과 netfmt의 man 페이지를 참조합니다.

nettl - trace 파일 만들기

1. nfs 서버에서 trace를 시작합니다.

  # nettl -tn pduin pduout -e ns_ls_ip -f /tmp/nfssvr
    또는
  # nettl -tn pduin pduout -e all -f /tmp/nfssvr
    또는
  # nettl -tn 0x30800000 -e all -size 1024 -tracemax 99999 -f /tmp/nfssvr

  주의: ns_ls_ip 드라이버는 ip위로 운반되지 않는 링크 레이어 트래픽이나 프로토콜에 대한 
        특정 정보가 필요하지 않다면 대부분의 경우 충분합니다.

2. nfs 클라이언트에서 mount 명령어를 실행합니다:

  # mount nfs_server:/export-mnt-pnt  /local-mnt-pnt

3. nfs서버에서 trace를 정지합니다:

  # nettl -tf -e all

netfmt - trace 파일 포맷하기

1. 캡쳐 파일에서 모든 패킷에 1-liner trace 분석 파일을 만듭니다:

  # netfmt -Nnl1f /tmp/nfssvr.TRC0 > /tmp/trace.txt

2. 캡쳐 파일에서 모든 패킷의 자세한 trace 분석결과를 만듭니다:

  # netfmt -Nnlf /tmp/nfssvr.TRC0 > /tmp/trace.txt

3. 패킷 필터를 사용하여 1-liner trace 분석 파일을 만듭니다.

  # netfmt -Nnl1c /tmp/filterfile -f /tmp/nfssvr.TRC0 > /tmp/trace.txt


netfmt 패킷 필터

"관심" 있는 패킷을 보려면, 필터 파일을 만들고 /tmp/filterfile으로 정하고 위에서 설명한
netfmt 명령어와 결합하여 사용합니다. 다음은 주어진 기준을 바탕으로 필터링하는 방법에 대한
예제입니다:

1. nettl trace를 구동하는 호스트에 의해 IP 어드레스로 전송되거나 수신되는 패킷을 보려면:

  filter ip_saddr 192.6.2.1
  filter ip_daddr 192.6.2.1

2. nettl trace를 구동하는 호스트에 의해 이더넷 어드레스로 전송되거나 수신되는 패킷을 보려면:
  filter source 08-00-09-00-12-3c
  filter dest 08-00-09-00-12-3c

3. trace를 하고 있는 호스트로 전송되거나 수신되는 패킷을 보려면:
  NFS 패킷을 보려면:

  filter udp_sport 2049 /* UDP port 2049 = nfsd */
  filter udp_dport 2049 /* UDP port 2049 = nfsd */

4. trace를 하고 있는 호스트로 전송되거나 수신되는 패킷을 보려면;
  텔넷 패킷만을 보려면:

  filter tcp_sport 23 /* TCP port 23 = telnet */
  filter tcp_dport 23 /* TCP port 23 = telent */

주의: 다중 필터가 사용되면, 논리적으로 " AND"되고 "OR"되지 않습니다:
    예:

        filter ip_saddr 192.6.2.1
        filter ip_daddr 192.6.2.1
        filter tcp_sport 23 /* TCP port 23 = telnet */

      이 필터는 ip 어드레스 192.6.2.1을 갖는 시스템으로/에서 오직 텔넷 커넥션 요청을 
      포맷할 것입니다

"진행중인" 패킷 관찰을 위해서는

"진행중인" 패킷 관찰을 위한 nettl_netfmt 운영 방법:

다음 명령어가 스크린에 trace 파일로 표시하고, 출력을 파일로 만듭니다. -e 파라미터로 드라이버를
지정할 수 있습니다:

  # nettl -tn 0x30800000 -e all | netfmt -FNnlc /tmp/filterfile | tee /tmp/fmt0

trace를 정지하기 위해서는:

위에 시작된 nettl 명령어에 CTRL/C를 누르고 나서,
  # nettl -tf -e all

포맷된 trace 파일은 /tmp/fmt0 파일이 됩니다. 이때 만들어진 어떤 raw파일도 없습니다.


출처: http://newposting.tistory.com/entry/HP-UX-nettl과-netfmt-예제 [ICQ 15161909]