https://breakerz.tistory.com/entry/%EC%95%8C%EB%A9%B4-%EB%8F%84%EC%9B%80%EB%90%98%EB%8A%94-%EB%84%A4%ED%8A%B8%EC%9B%8C%ED%81%AC-%EA%B8%B0%EB%B3%B8-%EC%A7%80%EC%8B%9D-1

 

알아두면 좋은 네트워크 기본 지식

IP와 도메인 IP (Internet Protocol):네트워크에서 장치를 식별하기 위해 사용되는 숫자로 구성된 주소입니다.예: 192.168.1.1 또는 2400:cb00:2048:1::c629:d7a2 (IPv4와 IPv6).사람에게는 익숙하지 않은 숫자 형태

breakerz.tistory.com

위 링크 내용을 먼저 봐주시고, 내용을 확인해주시면 이해가 잘 되실겁니다^^

 

네트워크 확인을 위해 자주 사용하는 명령어들에 대해 간단히 정리해 보겠습니다.
각 명령어는 네트워크 연결 상태를 점검하거나 진단하는데 매우 유용합니다.
 
먼저, 윈도우 명령어를 사용하기 위해서 명령 프롬프트를 실행시켜야 합니다.
 
방법 1. 실행(Win+r) -> cmd 입력

 
방법 2. 찾기 -> 명령 프롬프트 입력 -> 명령 프롬프트 선택

 
명령 프롬프트를 실행하면 아래와 같은 명령어 창이 열립니다.

 

1. ipconfig 명령어


- 용도: 현재 컴퓨터의 IP 주소와 네트워크 설정을 확인합니다.
- 설명: ipconfig는 컴퓨터의 네트워크 어댑터 설정(예: IP 주소, 서브넷 마스크, 게이트웨이 등)을 보여줍니다. 네트워크 문제가 발생할 때 기본적으로 확인하는 명령어입니다.

- 사용 예시:
 
1) 내 PC의 IP정보 확인
 - 유선 네트워크로는 132.168.70.13 IP가 할당되어 있고, 무선 Wi-Fi로는 192.168.0.105 IP가 할당되어 있습니다.

C:\>ipconfig

Windows IP 구성

...

이더넷 어댑터 이더넷 2:

   연결별 DNS 접미사. . . . : kornet
   링크-로컬 IPv6 주소 . . . . : fe20::1d3:8fb5:1b00:b4b8%9
   IPv4 주소 . . . . . . . . . : 132.168.70.13
   서브넷 마스크 . . . . . . . : 255.255.255.128
   기본 게이트웨이 . . . . . . : 132.168.70.1

무선 LAN 어댑터 Wi-Fi:

   연결별 DNS 접미사. . . . :
   링크-로컬 IPv6 주소 . . . . : fe40::3b92:3816:356e:d8de%11
   IPv4 주소 . . . . . . . . . : 192.168.0.105
   서브넷 마스크 . . . . . . . : 255.255.255.0
   기본 게이트웨이 . . . . . . : 192.168.0.1
...

 
2) 내 PC의 IP정보, DNS정보 확인(자세한 정보 표시)
  - ipconfig /all 옵션을 사용하면 DNS 정보 등 더 자세한 정보를 확인할 수 있습니다.

C:\>ipconfig /all

Windows IP 구성

   호스트 이름 . . . . . . . . : IT_LifeLog
   주 DNS 접미사 . . . . . . . :
   노드 유형 . . . . . . . . . : 혼성
   IP 라우팅 사용. . . . . . . : 아니요
   WINS 프록시 사용. . . . . . : 아니요
   DNS 접미사 검색 목록. . . . : kornet

...

이더넷 어댑터 이더넷 2:

   연결별 DNS 접미사. . . . : kornet
   설명. . . . . . . . . . . . : Realtek PCIe GBE Family Controller #2
   물리적 주소 . . . . . . . . : D3-47-C6-80-C3-82
   DHCP 사용 . . . . . . . . . : 예
   자동 구성 사용. . . . . . . : 예
   링크-로컬 IPv6 주소 . . . . : fe10::2d4:6ba5:3b00:b4b8%9(기본 설정)
   IPv4 주소 . . . . . . . . . : 132.168.70.13(기본 설정)
   서브넷 마스크 . . . . . . . : 255.255.255.128
   임대 시작 날짜. . . . . . . : 2025년 3월 13일 목요일 오후 12:43:55
   임대 만료 날짜. . . . . . . : 2025년 3월 27일 목요일 오전 10:43:54
   기본 게이트웨이 . . . . . . : 132.168.70.1
   DHCP 서버 . . . . . . . . . : 132.168.70.10
   DHCPv6 IAID . . . . . . . . : 164632514
   DHCPv6 클라이언트 DUID. . . : 00-01-00-01-3C-7B-74-DB-D0-17-C2-85-C0-31
   DNS 서버. . . . . . . . . . : 168.126.63.1
                                 168.126.63.2
   Tcpip를 통한 NetBIOS. . . . : 사용

무선 LAN 어댑터 Wi-Fi:

   연결별 DNS 접미사. . . . :
   설명. . . . . . . . . . . . : Realtek 8832BU Wireless LAN WiFi 6 USB NIC
   물리적 주소 . . . . . . . . : 59-63-23-F4-5F-14
   DHCP 사용 . . . . . . . . . : 아니요
   자동 구성 사용. . . . . . . : 예
   링크-로컬 IPv6 주소 . . . . : fe20::3b41:3421:309e:d8de%11(기본 설정)
   IPv4 주소 . . . . . . . . . : 192.168.0.105(기본 설정)
   서브넷 마스크 . . . . . . . : 255.255.255.0
   기본 게이트웨이 . . . . . . : 192.168.0.1
   DHCPv6 IAID . . . . . . . . : 106464916
   DHCPv6 클라이언트 DUID. . . : 00-01-00-01-2C-7B-73-DB-D0-17-C2-85-C0-31
   DNS 서버. . . . . . . . . . : 8.8.8.8
                                 8.8.4.4
   Tcpip를 통한 NetBIOS. . . . : 사용
...

 

2. nslookup 명령어

- 용도: 도메인 이름에 대한 IP 주소를 확인합니다.
- 설명: nslookup은 도메인 네임 서버(DNS)로부터 도메인에 대한 IP 주소를 조회합니다. DNS 설정을 확인하거나, 특정 도메인의 IP 주소를 확인할 때 유용합니다.
 
- 사용 예시:

C:\>nslookup http://www.naver.com
서버:    kns.kornet.net
Address:  168.126.63.1

권한 없는 응답:
이름:    http://www.naver.com.nheos.com
Addresses:  223.130.200.219
          223.130.200.236
          223.130.192.247
          223.130.192.248
Aliases:  http://www.naver.com


C:\>nslookup http://www.topspin.kr
서버:    kns.kornet.net
Address:  168.126.63.1

권한 없는 응답:
이름:    topspin.kr
Address:  112.146.31.29
Aliases:  http://www.topspin.kr

 - 서버는 DNS서버의 정보이며, Address가 실제 도메인의 IP주소 입니다.
 - naver는 접속가 많기 때문에 여러 IP를 할당받아서 사용하는 것을 확인할 수 있습니다.


3. ping 명령어

- 용도: 다른 컴퓨터와의 연결 상태를 확인합니다.
- 설명: ping 명령어는 특정 IP 주소나 도메인에 패킷을 보내 응답이 오는지 확인합니다. 이 과정에서 패킷이 왕복하는 데 걸린 시간을 보여줍니다.

- 사용 예시: 인터넷이 되지 않거나, 끊기는 현상이 발생 할 때
 
1) 공유기(IPTIME) 연결 상태 확인

C:\>ping 192.168.0.1

Ping 192.168.0.1 32바이트 데이터 사용:
192.168.0.1의 응답: 바이트=32 시간=2ms TTL=64
192.168.0.1의 응답: 바이트=32 시간=2ms TTL=64
192.168.0.1의 응답: 바이트=32 시간=2ms TTL=64
192.168.0.1의 응답: 바이트=32 시간=2ms TTL=64

192.168.0.1에 대한 Ping 통계:
    패킷: 보냄 = 4, 받음 = 4, 손실 = 0 (0% 손실),
왕복 시간(밀리초):
    최소 = 2ms, 최대 = 2ms, 평균 = 2ms

 
2) 인터넷 연결 상태 확인

C:\>ping google.com

Ping google.com [172.217.25.174] 32바이트 데이터 사용:
172.217.25.174의 응답: 바이트=32 시간=34ms TTL=117
172.217.25.174의 응답: 바이트=32 시간=33ms TTL=117
172.217.25.174의 응답: 바이트=32 시간=34ms TTL=117
172.217.25.174의 응답: 바이트=32 시간=34ms TTL=117

172.217.25.174에 대한 Ping 통계:
    패킷: 보냄 = 4, 받음 = 4, 손실 = 0 (0% 손실),
왕복 시간(밀리초):
    최소 = 33ms, 최대 = 34ms, 평균 = 33ms

 
- 응답이 돌아오면 네트워크 연결이 정상적이며, 응답 시간이 길면 네트워크 지연이 있음을 의미합니다.
 
※ 웹 사이트의 운영 정책에 따라서 ping 통신이 차단될 수 도 있기 때문에 ping이 잘 나가는 사이트를 지정하여 활용하시면 좋습니다. (google.com, bing.com - 허용 / www.naver.com, www.daum.net - 차단)

C:\>ping http://www.naver.com

Ping http://www.naver.com.nheos.com [223.130.200.219] 32바이트 데이터 사용:
요청 시간이 만료되었습니다.
요청 시간이 만료되었습니다.
요청 시간이 만료되었습니다.
요청 시간이 만료되었습니다.

223.130.200.219에 대한 Ping 통계:
    패킷: 보냄 = 4, 받음 = 0, 손실 = 4 (100% 손실)

 

4. netstat 명령어

- 용도: 현재 네트워크 연결 상태와 포트 사용 현황을 확인합니다.
- 설명: netstat은 현재 시스템에서 사용 중인 네트워크 연결, 열려 있는 포트, 접속 상태 등을 보여줍니다.
 
아래는 주요 연결 상태에 대한 설명합니다. 이중에 기억해야 될 상태는 LISTEN, ESTABLISHED, SYN_SENT 입니다.

LISTEN 포트를 열고 외부 연결을 기다리는 중. (서버 대기 상태)
ESTABLISHED 연결이 정상적으로 설정되어 통신이 가능한 상태.
SYN_SENT 연결 요청(SYN)을 보낸 상태로, 응답을 기다리는 중. (클라이언트 측)
SYN_RECEIVED 연결 요청을 받고 응답(SYN+ACK)을 보낸 상태. (서버 측 수신 대기)
TIME_WAIT 연결 종료 후 잠시 대기하는 상태. 재전송 방지를 위해 대기 중.
CLOSE_WAIT 상대방이 연결을 종료했으며, 로컬 애플리케이션이 종료를 기다리는 상태.
FIN_WAIT_1 연결 종료 요청(FIN)을 보낸 상태. 상대 응답을 기다리는 중.
FIN_WAIT_2 FIN에 대한 ACK을 받은 후, 상대 FIN을 기다리는 상태.
CLOSING 양쪽 모두 FIN을 보냈고, 아직 ACK를 기다리는 중.
LAST_ACK FIN을 보내고 상대방의 ACK을 기다리는 상태.
CLOSED 연결이 완전히 종료된 상태.

 
- 사용 예시:
 
1) PC의 열려있는 포트를 확인 할 때
 - 로컬주소 0.0.0.0 : 내 PC에 설정된 모든 IP로 접속이 가능한 상태입니다.
 - 로컬주소 127.0.0.1 : 내 PC에서 127.0.0.1 주소로만 접속이 가능한 상태입니다.(외부에서 접속 불가)

C:\>netstat -ano | find "LISTEN"
프로토콜  로컬 주소            외부 주소                 상태               PID            
  TCP    0.0.0.0:80             0.0.0.0:0              LISTENING       6340
  TCP    0.0.0.0:135            0.0.0.0:0              LISTENING       1188
  TCP    0.0.0.0:443            0.0.0.0:0              LISTENING       6444
  TCP    0.0.0.0:445            0.0.0.0:0              LISTENING       4
  TCP    0.0.0.0:902            0.0.0.0:0              LISTENING       6724
  TCP    0.0.0.0:912            0.0.0.0:0              LISTENING       6724
  TCP    0.0.0.0:1042           0.0.0.0:0              LISTENING       1004
  TCP    0.0.0.0:1443           0.0.0.0:0              LISTENING       24892
  TCP    0.0.0.0:2179           0.0.0.0:0              LISTENING       2596
...

  TCP    127.0.0.1:1235         0.0.0.0:0              LISTENING       8048
  TCP    127.0.0.1:5354         0.0.0.0:0              LISTENING       6304
  TCP    127.0.0.1:8380         0.0.0.0:0              LISTENING       33076
  TCP    127.0.0.1:9705         0.0.0.0:0              LISTENING       4
  TCP    127.0.0.1:10530        0.0.0.0:0              LISTENING       10976
  TCP    127.0.0.1:10531        0.0.0.0:0              LISTENING       10976
  TCP    127.0.0.1:16106        0.0.0.0:0              LISTENING       19340
  TCP    127.0.0.1:16116        0.0.0.0:0              LISTENING       19340
...

 
2) 현재 연결중인 IP와 포트를 확인할 때
 - 132.168.70.13 -> 74.125.23.188 IP의 5228포트로 연결되어 있는 상태입니다.
 - 132.168.70.13 -> 59.151.136.94 IP의 443포트로 연결되어 있는 상태입니다.
※ 로컬 주소의 포트는 외부 주소에 접속하기 위해 랜덤으로 지정된 포트입니다.

C:\>netstat -ano | find "ESTABLISHED"
  프로토콜  로컬 주소                           외부 주소                       상태             PID
...
  TCP    132.168.70.13:5833      74.125.23.188:5228     ESTABLISHED     31556
  TCP    132.168.70.13:6234      104.26.7.163:443       ESTABLISHED     17780
  TCP    132.168.70.13:7264      59.151.136.94:443      ESTABLISHED     36284
  TCP    132.168.70.13:7279      156.59.44.81:443       ESTABLISHED     12900
  TCP    132.168.70.13:7382      3.224.6.128:443        ESTABLISHED     22416
 ...
  TCP    127.0.0.1:4551         127.0.0.1:4552         ESTABLISHED     6724
  TCP    127.0.0.1:4552         127.0.0.1:4551         ESTABLISHED     6724
  TCP    127.0.0.1:5852         127.0.0.1:64032        ESTABLISHED     20088
  TCP    127.0.0.1:7381         127.0.0.1:13649        ESTABLISHED     22416
  TCP    127.0.0.1:13264        127.0.0.1:13265        ESTABLISHED     26532
  TCP    127.0.0.1:13265        127.0.0.1:13264        ESTABLISHED     26532
  TCP    127.0.0.1:13266        127.0.0.1:13267        ESTABLISHED     26532
  TCP    127.0.0.1:13267        127.0.0.1:13266        ESTABLISHED     26532
  TCP    127.0.0.1:13268        127.0.0.1:13269        ESTABLISHED     26532
...

 
3) 연결을 시도하고 있으나 응답을 기다리고 있는 상태
  - 내 IP에서 192.168.0.3의 80포트로 접속을 시도하고 있지 않으나 연결이 되지 않는 상태
  - PID를 통해 어떤 프로그램에서 연결을 실행하였는지 확인 할 수 있음

C:\>netstat -ano | find "SYN_SENT"
프로토콜    로컬 주소                   외부 주소                  상태                PID
  TCP    192.168.0.5:7932       192.168.0.3:80         SYN_SENT        32052

작업 관리자 화면

5. telnet 명령어

- 용도: 특정 IP 주소와 포트가 열려 있는지 확인합니다.
- 설명: telnet 명령어는 원격 서버에 접속하거나, 특정 포트가 열려 있는지 확인하는 데 사용됩니다. 특히, 서버와의 연결 테스트에 유용합니다.
 
- telnet 명령어를 사용하려면 텔넷 클라이언트를 먼저 활성화시켜야 합니다.
  제어판 > 프로그램 > Windows 기능 켜기/끄기 > 텔넷 클라이언트 선택 > 확인


- 사용 예시:
 
1) 도메인 명으로 접속

www.google.com의 443포트로 접속

 
 - 정상 접속시 커맨드 화면이 아래와 같이 변경됩니다.

telnet을 통한 정상 접속 화면

 
2) IP로 접속

192.168.0.10의 443포트로 접속

 
 - 포트가 열려있지 않거나 방화벽에 의해 막혀있을 경우 일정시간 대기하다가 아래와 같은 메세지를 출력합니다.

telnet 접속을 시도하였으나 연결하지 못함

 
[응용 사례]
Telnet 명령어로 접속 시도 후 netstat 명령어를 사용하여 목적지와의 통신이 되지 상태인지 확인 할 수 있습니다.

※  netstat -anp | find "SYN_SENT" 명령어를 수행하면 443포트의 연결이 대기는중인 것을 확인 할 수 있습니다.

'쉽게 배우는 IT상식' 카테고리의 다른 글

알아두면 좋은 네트워크 기본 지식  (3) 2024.12.05

+ Recent posts