Computer Science(CS)

[CS] nslookup, ping, talnet 그리고 tracert

나무늘보Programmer 2024. 4. 25. 14:46

nslookup이란?

nslookup은 DNS 서버에 질의해서 도메인의 정보를 조회하는 명령어이다.

원하는 도메인의 IP 확인

nslookup [도메인 명]

원하는 도메인의 ip정보가 출력된다.

특정 네임서버를 통해서 IP 정보 확인

nslookup [도메인 명] [네임서버 or IP]

입력한 네임서버를 통해서 원하는 도메인의 ip를 조회 하게된다.

원하는 레코드 조회

nslookup -type='옵션' [도메인 명]

nslookup 명령 다음에 -type 옵션을 추가하여 원하는 레코드를 조회 할 수 있다.

  • NS : Name Server, 도메인 네임서버를 지정
  • MX : Mail Exchanger, 도메인의 메일 서버를 지정
  • A : Address 도메인의 각각의 호스트에 대한 IP 정보를 지정
  • CNAME : Canonical Name, 기존 호스트의 별칭으로 부여할 이름을 지정
  • SOA : 도메인의 Start-Of-Authority 정보를 기록
  • HINFO : 호스트의 CPU 정보와 운영체제 정보
  • MINFO : 메일박스와 메일 리스트 정보
  • PTR : IP 주소에 대한 호스트명, 리버스
  • DNS를 구축할 경우에 사용
  • TXT : 임의의 텍스트를 포함할 수 있는 레코드로, 도메인 소유권확인과 SPF, DKIM 및 DMARC를 통한 이 메일 악용 예방을 위해서 사용한다.
  • UINFO : 사용자 정보를 기록
  • ANY : 호스트에 관련된 모든 레코드 정보

nslookup 프롬프트 내에서 질의 하기

nslookup 👉 nslookup 프롬프트로 진입
원하는 질의 실행

TIP : nslookup프롬프트 진입 후 server 명령어로 디폴트 네임 서버 변경이 가능하다.

ping이란?

목적지 서버 IP로 반향 요청을 전송하는 것이다.

ping [옵션] [목적지 서버 IP]

ping Option

항목 설명
-c Count 전송(및 수신)되는 Count 변수에서 표시하는 반향 요청의 수를 지정합니다.
-w timeout 이 옵션은 -c 옵션과 함께 사용해야만 작동됩니다. 이를 사용하면 (마지막 패킷을 전송한 후에) 최대 'timeout' 시간(초 단위) 동안 ping이 응답을 대기합니다.
-d 소켓 레벨 디버깅을 시작합니다.
-D 이 옵션을 사용하면 ICMP ECHO_REPLY 패킷의 표준 출력에 대한 16진 덤프가 발생합니다.
-f flood-ping 옵션을 지정합니다. -f 플래그는 되돌아오는 즉시 또는 초당 100회(둘 중에서 빈도가 높은 쪽) 패킷을 "플러드(flood)"하거나 출력합니다. 전송된 모든 ECHO_REQUEST에 대해 .(마침표)가 인쇄되는 한편, 수신된 모든 ECHO_REPLY에 대해 백스페이스가 인쇄됩니다. 이는 삭제 중인 패킷의 수에 대한 신속한 표시를 제공합니다. 루트 사용자만 이 옵션을 사용할 수 있습니다.
“ 주의 : 이는 네트워크에서 매우 어려울 수 있으므로 주의해서 사용해야 합니다. flood-ping은 루트 사용자에만 허용됩니다. -f 플래그는 -i Wait 플래그와 함께 사용될 수 없습니다. ”
-I a.b.c.d a.b.c.d에서 지정하는 인터페이스가 송신 IPv4 멀티캐스트에 사용됨을 지정합니다. -I 플래그는 대문자 i입니다.
-o interface interface가 송신 IPv6 멀티캐스트에 사용됨을 지정합니다. 인터페이스는 'en0', 'tr0' 등의 양식으로 지정됩니다.
-i Wait 각 패킷의 전송 간에 Wait 변수에서 지정하는 시간(초 단위) 동안 대기합니다. 디폴트는 각 패킷 간에 1초 동안 대기하는 것입니다. 이 옵션은 -f 플래그와 함께 사용될 수 없습니다.
-L 멀티캐스트 Ping에 대해 로컬 루프백을 사용하지 않습니다.
-l Preload 일반 작동 모드에 진입하기 전에 가급적 빨리 Preload 변수에서 지정하는 수의 패킷을 전송합니다(초당 하나씩). -l 플래그는 소문자 l입니다.
-n 숫자 출력만 지정합니다. 호스트 주소에 대한 기호 이름의 검사를 시도하지 않습니다.
-p Pattern 전송한 패킷을 채우기 위한 최대 16 'pad' 바이트를 지정합니다. 이는 네트워크의 데이터 관련 문제를 진단하는 데 유용합니다. 예를 들어, -p ff는 패킷을 모두 1로 채웁니다.
-q 정적 출력을 지정합니다. 시작 시에 및 완료될 때 오직 요약 행만 표시합니다.
-r 라우팅 테이블을 무시하고 접속된 네트워크에 있는 호스트에 직접 전송합니다. Host가 직접 연결된 네트워크에 없으면 ping 명령이 오류 메시지를 생성합니다. 이 옵션은 더 이상 해당 라우트가 없는 인터페이스를 통해 로컬 호스트의 ping을 실행하는 데 사용될 수 있습니다.
-R 레코드 라우트 옵션을 지정합니다. -R 플래그는 ECHO_REQUEST 패킷의 RECORD_ROUTE 옵션을 포함하며, 리턴된 패킷의 라우트 버퍼를 표시합니다.
“ 주의 : IP 헤더는 9개의 해당 라우트를 수용할 만한 정도의 크기입니다. 또한 많은 호스트와 게이트웨이는 이 옵션을 무시합니다.”
-a addr_family addr_family가 "inet6"과 동일한 경우, ICMP 패킷의 대상 주소를 IPv6 형식으로 맵핑합니다.
-s PacketSize 전송될 데이터 바이트의 수를 지정합니다. 디폴트는 56이며, 8바이트의 ICMP 헤더 데이터와 결합되는 경우에 이는 64 ICMP 데이터 바이트로 변환됩니다.
-S hostname/IP addr IP 주소를 송신 Ping 패킷의 소스 주소로서 사용합니다. 두 개 이상의 IP 주소가 있는 호스트에서는 -S 플래그를 사용하여 소스 주소가 패킷이 전송된 인터페이스의 IP 주소가 아닌 주소가 되도록 강제할 수 있습니다. IP 주소가 시스템의 인터페이스 주소 중 하나가 아니면 오류가 리턴되며 아무 것도 전송되지 않습니다.
-T ttl 멀티캐스트 패킷의 활동 시간이 ttl초임을 지정합니다.
-v 반향 응답과 함께 수신된 ICMP 패킷을 나열하는 상세 출력을 요청합니다.

ping 반응이 없다면 방화벽이 열려있지 않은 것이다.

talnet이란?

Ping과 비슷한 역할을 하지만 Ping과는 다른게 목적지 서버에 특정 서비스가 살아있는지 여부를 확인하는 명령어 이다.

telnet [목적지 서버IP] [서비스PORT]

계속 대기중일시 방화벽이 열려있지 않을 가능성이 크며 바로 연결거부가 발생하면 프로세스가 안떠있는 상태이다.

tracert(traceroute)란?

출발지와 목적지 사이의 라우터를 모두 추적하는 명령어이다
지정된 호스트에 도달할 때까지 통과하는 경로의 정보와 각 경로에서의 지연 시간을 추척한다.
(여담 : 군인들이 인트라넷 확인을 위해서 많이 쓴다)

tracert [목적지 서버IP]

 

참고 사이트

https://www.sharedit.co.kr/posts/1475

 

 

 

ping / telnet / tracert 란? 서버접속 가능여부 체크하기

cmd창에서 특정 서버 접속가능 여부 체크방법 1. ping 현재 접속 네트워크(출발지 서버)에서 목적지 서버 접근가능 여부 확인 사용법: ping [목적지 서버IP] ex) 응답이 없으면(ping이 되지 않으면) 방화

cheershennah.tistory.com

 

 

ping 명령

용도 네트워크 호스트로 반향 요청을 전송합니다. 구문 ping [ -d] [ -D ] [  -n ] [  -q ] [ -r] [ -v] [  -R ] [ -a addr_family ] [  -c Count ] [ -w timeout ] [  -f |  -i Wait ] [  -l Preload ] [  -p Pattern ]

www.ibm.com