dns 명령어 패키지

 네임서버를 이용한 여러가지 유용한 프로그램들이 있다.

 보통 dig, host 등이 있는데 대부분은 기본적으로 사용가능하게 되어있다.

 하지만 리눅스 설치시, 최소 설치나 기타 다른 옵션들을 이용하여 설치를 하였을 경우 위의 명령어들이 작동되지 않는 경우가 있는데, 다음의 패키지를 설치하면 된다.

 dnsutils

 우분투나 데비안 시스템 사용자인 경우, 다음의 명령어를 입력하면 쉽고 간편하게 설치가 가능하다.

 # apt-get install dnsutils

arp (arp 캐싱)

 연결하고자 하는 시스템의 MAC 주소 확인

arp [옵션] (Language : text)
-v : arp 상태를 보여준다.

-t type : ARP 캐쉬에 올라와 있는 타입을 검색한다. ether(Ethernet)또는 ax25(AX.25 packet radio)등이 있으며 ether가 기본 타입이다.

-a [hosts] : 등록된 호스트 중 지정한 호스트의 내용을 보여준다. 호스트를 지정하지 않으면 등록된 모든 호스트를 보여준다.

-d [host] : 지정한 호스트를 목록에서 삭제한다.

-s host hardware-address : 호스트의 하드웨어 주소 즉 호스트 MAC 주소를 추가한다. 이더넷 카드의 경우 6자리의 16진수로 되어있다.

-f file : 파일에 있는 목록을 추가한다.

 TCP/IP 명령어이다. 시스템 사이의 통신에는 상대방의 MAC 주소가 필요하다. 이때 arp는 ARP(Address Resolution Protocol)을 이용하여 연결하고자 하는 시스템 IP 에 신호를 보내 MAC 주소를 받아온다.

 서브넷의 arp 정보는 연결 효율을 높이기 위해 /proc/net/arp 에 저장된다. 캐시에 저장된 정보는 추가/삭제할 수 있다. 이와 같이 저장된 arp 캐시의 내용을 자세히 보고 싶을 경우에는 다음과 같이 실행한다.

사용자 삽입 이미지

 seclab.kongju.ac.kr 라는 호스트에 대한 정보만 알고 싶다면 다음과 같이 한다.

사용자 삽입 이미지

 경우에 따라서, 시스템에서 기존의 이더넷 카드 대신 새 이더넷 카드를 설치했을 때 내부 네트워크 연결이 잘 되지 않는 경우가 있다. 이것은 arp 캐시가 기존 이더넷 카드의 MAC 주소를 저장하고 있어, 같은 IP 를 사용하더라도 인식하지 못하는 경우이다. 이 경우에는 arp -d 명령을 사용하여 정보를 삭제한 뒤 다시 시도한다.

 # arp -d seclab.kongju.ac.kr : 호스트명이 seclab.kongju.ac.kr 인 정보 삭제

사용자 삽입 이미지

 관련 명령어
 
 arping : 대상 주소에 ARP 패킷을 날린다.
 
 arpwatch : Ethernet/IP 주소의 진로를 추적한다.

 arpsnmp : Ethernet/IP 주소의 진로를 추적한다.

 tcpdump : 네트워크 인터페이스에서의 패킷 헤더들을 출력한다.

apropos (관련 명령 찾기)

 whatis DB를 검색하여 검색하는 명령어와 관련이 있는 명령어를 간단한 설명과 함께 보여준다.

apropos [키워드] (Language : text)
  1. 키워드 : 검색하고 싶은 문자열   

 apropos 는 whatis DB를 검색해 관련 명령어와 그 명령어에 대한 간단한 설명을 보여준다.

 whatis 는 whatis DB에서 명령어만 검색하여 출력하지만, apropos 는 명령어, 설명 모두를 검색해 결과를 보여준다.

 예를 들어 이런 상황을 생각해 보자. 리눅스에서는 gimp 등의 그래픽 툴을 사용하지 않고도 비트맵 파일 등을 jpeg 포맷으로 압축할 수 있다. 그런데 그 명령이 생각나지 않을 경우 다음과 같이 입력한다.

 사용자 삽입 이미지
 이 명령을 사용하면, 명령이나 혹은 핵심 설명에 jpeg 이라는 단어가 들어가는 명령을 확인할 수 있다.

 관련 명령어

 man : -k 옵션을 사용하면 apropos 와 같은 기능을 한다.
 whatis : whatis DB 에서 명령어와 일치하는 요약 내용을 검색하여 보여준다.

whatis DB (Language : text)
명령어와 명령어의 기본설명을 모아놓은 파일이다. /var/cache/man/ 에 whatis 라는 라인별로 구분되어 있는 텍스트 DB 파일로 존재한다. appros와 whatis 명령은 이 파일에서 해당 명령을 검색하여 내용을 보여준다. whatis DB 는 makewhatis 명령으로 파일을 생성하거나 업데이트 할 수 있다.
makewhatis (Language : text)
makewhatis 는 시스템에 등록된 최신의 man 페이지를 검색하여 whatis DB를 업데이트 한다.

# /usr/sbin/makewhatis -u