[CS] nslookup, ping, talnet 그리고 tracert
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