본문으로 이동
메뉴 여닫기
환경 설정 메뉴 여닫기
개인 메뉴 여닫기
로그인하지 않음
지금 편집한다면 당신의 IP 주소가 공개될 수 있습니다.

윈도우 네트워크 명령어

IT 위키

Windows network commands : 윈도우 네트워크 명령어

윈도우 명령 프롬프트에서 네트워크 설정을 확인하고 연결 문제를 진단하는 데 쓰는 명령줄 도구들이다.

대부분 운영체제에 기본 포함되어 있으며 명령 /?로 도움말을 볼 수 있다. 일부 명령(nbtstat, pathping 등)은 옵션의 대소문자를 구분한다. 리눅스에도 비슷한 도구가 있으나 이름과 옵션이 다르므로 함께 정리해 두면 좋다.

명령 한눈에 보기

편집 원본 편집
명령 용도 리눅스 대응
ipconfig IP 구성 확인, DHCP 임대 해제·갱신, DNS 캐시 관리 ip addr, ifconfig
ping ICMP 에코 요청으로 도달 가능성과 왕복 시간 확인 ping
tracert 목적지까지 거치는 라우터 경로 확인 traceroute
pathping 경로 추적과 구간별 손실률 통계를 함께 확인 mtr
nslookup DNS 서버에 이름 질의 nslookup
netstat 연결 상태, 수신 대기 포트, 라우팅 테이블, 통계 확인 netstat, ss
arp ARP 캐시 확인·추가·삭제 arp
route 라우팅 테이블 확인·추가·삭제 route
nbtstat NetBIOS over TCP/IP 이름 테이블과 캐시 확인 없음
netsh 인터페이스 주소, 방화벽 등 네트워크 구성 변경 ip, nmcli
net 공유 연결, 공유 생성, 사용자 관리 mount, useradd
hostname 컴퓨터 호스트 이름 표시 hostname
getmac 네트워크 어댑터의 MAC 주소 표시 ip link

자세한 내용은 윈도우 ipconfig 문서를 본다.

옵션 의미
/all 모든 어댑터의 전체 TCP/IP 구성(MAC 주소, DHCP 서버, DNS 서버, 임대 시간 등)
/release DHCP 서버에 DHCPRELEASE를 보내 IP 구성을 반납한다
/renew DHCP 구성을 갱신한다
/flushdns DNS 클라이언트 확인자 캐시를 비운다
/displaydns DNS 확인자 캐시 내용(hosts 파일 항목 포함)을 보여 준다
/registerdns DNS 이름과 IP 주소의 동적 등록을 수동으로 시작한다

자세한 내용은 핑 문서를 본다.

옵션 의미
/t 중단할 때까지 계속 보낸다. Ctrl+Break는 통계 표시, Ctrl+C는 종료
/n 개수 보낼 에코 요청 수. 기본값 4
/l 크기 데이터 필드 크기(바이트). 기본값 32, 최대 65,500
/a 대상 IP 주소를 호스트 이름으로 역방향 조회한다
/i TTL 보낼 패킷의 TTL 값. 최대 255
/f IPv4 헤더에 단편화 금지(DF) 플래그를 설정한다
/w 시간 응답 대기 시간(밀리초). 기본값 4000

옵션은 -t처럼 하이픈으로 써도 된다.

tracert와 pathping

편집 원본 편집
C:\>tracert -d 192.0.2.10
C:\>tracert -h 15 www.example.com
C:\>pathping -n 192.0.2.10
  • tracert /d: 중간 라우터 IP 주소를 이름으로 바꾸지 않아 결과가 빨리 나온다.
  • tracert /h 최대홉: 탐색할 최대 홉 수. 기본값 30.
  • pathping은 경로를 먼저 표시한 뒤 각 라우터에 여러 번(기본 100회) 에코 요청을 보내 구간별 손실률을 계산한다. /n은 이름 해석을 하지 않는다.

명령 한 줄로 끝내는 비대화형 모드와 > 프롬프트에서 여러 질의를 하는 대화형 모드가 있다. nslookup만 입력하거나 첫 인수로 하이픈을 주면 대화형 모드가 된다.

C:\>nslookup www.example.com
C:\>nslookup
> server 192.0.2.53
> set type=mx
> example.com
> set type=ns
> example.com
> exit

set type(또는 set querytype)은 질의할 DNS 자원 레코드 형식을 바꾼다. 기본값은 A이고 MX, NS, CNAME, PTR, SOA, TXT 등을 쓸 수 있다.

자세한 내용은 윈도우 netstat 문서를 본다.

옵션 의미
-a 모든 활성 TCP 연결과 수신 대기 중인 TCP·UDP 포트
-n 주소와 포트를 숫자로 표시하고 이름 해석을 하지 않는다
-o 연결마다 프로세스 ID(PID)를 표시한다
-b 연결이나 수신 대기 포트를 만든 실행 파일 이름을 표시한다
-r IP 라우팅 테이블을 표시한다. route print와 같다
-s 프로토콜별 통계(TCP, UDP, ICMP, IP)
-e 이더넷 통계(송수신 바이트·패킷 수)
-p 프로토콜 지정한 프로토콜의 연결만 표시한다

상태 열에는 LISTEN, ESTABLISHED, TIME_WAIT 같은 TCP 연결 상태가 나온다.

C:\>arp -a
C:\>arp -s 192.168.0.10 00-aa-00-4f-2a-9c
C:\>arp -d 192.168.0.10
C:\>route print
C:\>route add 10.10.0.0 mask 255.255.0.0 192.168.0.1 metric 5
C:\>route -p add 10.20.0.0 mask 255.255.0.0 192.168.0.1
C:\>route delete 10.10.0.0
  • arp -a: ARP 캐시를 표시한다. -s는 정적 항목 추가, -d는 삭제(*는 전체)이다. -s로 넣은 항목은 TCP/IP 스택을 다시 시작하면 사라진다.
  • route: print, add, delete, change 명령으로 라우팅 테이블을 다룬다. -p를 붙여 add하면 경로가 레지스트리에 저장되어 재부팅 뒤에도 유지된다. 기본 경로의 목적지는 0.0.0.0이다.
옵션 의미
-n 로컬 컴퓨터의 NetBIOS 이름 테이블
-c NetBIOS 이름 캐시(이름과 IP 주소 매핑)
-a 이름 원격 컴퓨터 이름으로 그 컴퓨터의 이름 테이블 조회
-A IP주소 원격 컴퓨터 IP 주소로 그 컴퓨터의 이름 테이블 조회
-R 이름 캐시를 비우고 Lmhosts 파일의 항목을 다시 읽는다

NetBIOS 이름 확인 문제를 볼 때 쓴다.

C:\>netsh interface ip set address name="Ethernet" static 192.168.1.100 255.255.255.0 192.168.1.1
C:\>netsh interface ip set address name="Ethernet" source=dhcp
C:\>netsh interface ip set dns name="Ethernet" static 192.168.1.53
C:\>netsh advfirewall firewall add rule name="Web" dir=in action=allow protocol=TCP localport=80

interface ip(interface ipv4) 컨텍스트에서 IP 주소, 게이트웨이, DNS 서버를 바꾸고, advfirewall 컨텍스트에서 Windows 방화벽 규칙을 다룬다.

명령 의미
net use Z: \\server\share 공유 자원을 드라이브 문자에 연결한다. /delete로 연결 해제
net share 로컬 공유 목록 표시, 공유 생성·삭제. 윈도우 net share 참고
net user 사용자 계정 표시·추가(/add)·삭제(/delete). /domain은 도메인 계정 대상
net view \\컴퓨터 지정 컴퓨터의 공유 자원 목록. 인수가 없으면 현재 도메인의 컴퓨터 목록

hostname과 getmac

편집 원본 편집
  • hostname: 전체 컴퓨터 이름 중 호스트 이름 부분을 표시한다.
  • getmac: 모든 네트워크 카드의 MAC 주소와 연결된 프로토콜을 표시한다. /v는 자세히, /fo table|list|csv는 출력 형식, /s는 원격 컴퓨터 지정이다.
  • 증상에 맞는 명령을 고르는 문제가 많다. 예를 들어 DNS 캐시 삭제는 ipconfig /flushdns, 경로 확인은 tracert, 포트와 PID 확인은 netstat -ano이다.
  • ping -t, -n, -l, -a처럼 옵션의 의미를 묻는다.
  • route -p add로 영구 경로를 추가하는 문법과 arp -s로 정적 ARP 항목을 넣는 문법을 알아야 한다.
  • 같은 기능의 윈도우 명령과 리눅스 명령(tracert와 traceroute, ipconfig와 ifconfig)을 구분할 수 있어야 한다.