네트워크 관련 명령어
(1) ifconfig(interface config)
ifconfig [interace] [address] [option] |
- 네트워크 인터페이스를 설정하거나 확인하는 명령
- IP 주소, 넷마스크 주소, MAC 주소 등을 설정하고 확인할 수 있음.
# ifconfig eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 9001 inet 172.31.43.90 netmask 255.255.240.0 broadcast 172.31.47.255 inet6 fe80::88a:29ff:fe31:26ea prefixlen 64 scopeid 0x20<link> ether 0a:8a:29:31:26:ea txqueuelen 1000 (Ethernet) RX packets 5989820 bytes 2292490847 (2.2 GB) RX errors 0 dropped 0 overruns 0 frame 0 TX packets 5792032 bytes 693430745 (693.4 MB) TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0 lo: flags=73<UP,LOOPBACK,RUNNING> mtu 65536 inet 127.0.0.1 netmask 255.0.0.0 inet6 ::1 prefixlen 128 scopeid 0x10<host> loop txqueuelen 1000 (Local Loopback) RX packets 28222 bytes 5873745 (5.8 MB) RX errors 0 dropped 0 overruns 0 frame 0 TX packets 28222 bytes 5873745 (5.8 MB) TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0 |
- 사용 예
# ifconfig eth0 down // eth0 카드의 작동을 중지, ifdown eth0과 같음 |
# ifconfig eth0 up // eth0 카드의 작동을 활성화, ifup eth0과 같음 |
# ifconfig eth0 192.168.0.2 netmask 255.255.255.0 broadcast 192.168.0.255 up // eth0에 IP 주소는 192.167.0.2, Netmask는 255.255.255.0, Broadcast는 192.168.0.255를 부여하고 활성화 |
(2) route
- 라우팅 테이블의 정보를 출력하거나 관리하는 명령
- 네트워크 주소, 게이트웨이 주소를 확인하거나 설정할 때 사용
route [add|del] [-destination] [netmask 값] [gw 값] [dev 인터페이스] |
# route Kernel IP routing table Destination Gateway Genmask Flags Metric Ref Use Iface default ip-172-31-32-1. 0.0.0.0 UG 100 0 0 eth0 172.31.32.0 0.0.0.0 255.255.240.0 U 0 0 0 eth0 ip-172-31-32-1. 0.0.0.0 255.255.255.255 UH 100 0 0 eth0 |
- 사용 예
# route add default gw 192.168.3.254 eth0 // 게이트웨이 주소 설정, 이더넷 카드가 하나인 경우에 'eth0' 생략 가능 |
# route del -net 192.168.3.0 netmask 255.255.255.0 |
# route add -net 192.168.3.128 netmask 255.255.255.192 dev eth0 |
# route del default gw 192.168.3.1 // 게이트웨이 주소 삭제 |
(3) netstat
- 네트워크의 연결 상태를 출력하는 명령
- 네트워크 연결 상태 이외에도 라우팅 테이블 정보, 네트워크 인터페이스 상태, 매스커레이드(masquerade) 연결 상태, 멀티캐스트 멤버 등의 정보를 출력
netstat [option] [address_family_option] |
- 사용 예
# netstat -anp // 모든 소켓의 PID 및 프로그램명 출력 |
- netstat의 State 결과
값 | 설명 |
LISTEN | 서버에서 클라이언트로부터 들어오는 패킷을 위해 소켓을 열고 기다리는 상태 |
SYS-SENT | 로컬 시스템의 클라이언트 애플리케이션이 원격 호스트에 연결을 요청한 상태 |
SYS-RECEIVED | 서버 시스템이 원격 클라이언트로부터 접속 요구를 받아 클라이언트에게 응답을 하였지만, 아직 클라이언트에게 확인 메시지를 받지 않은 상태 |
ESTABLISHED | 3 Way-Handshaking이 완료된 후 서버와 클라이언트가 서로 연결된 상태 |
FIN-WAIT1 | 소켓이 닫히고 연결이 종료되는 상태 |
FIN-WAIT2 | 연결은 종료된 상태이고, 소켓이 원격 호스트로부터 종료되었다는 정보를 기다리고 있는 상태 |
CLOSE-WAIT | 원격 호스트는 종료된 상태이고 소켓을 종료하기 위해 기다리는 상태 |
CLOSING | 흔하지 않지만 주로 확인 메시지가 전송 도중 분실된 상태 |
TIME-WAIT | 패킷 처리는 끝났지만 분실되었을지 모를 느린 세그먼트를 위해 당분간 소켓을 열어놓은 상태 |
CLOSED | 소켓 연결이 종료된 상태 |
LAST_ACK | 원격 호스트가 종료되고 소켓도 닫힌 상태에서 마지막 ACK 패킷을 기다리는 상태 |
UNKNOWN | 소켓 상태를 확인할 수 없는 상태 |
(4) arp
- ARP(Address Resolution Protocol) 캐시(Cache)를 관리하는 명령
- ARP 캐시는 현재 접속되어 있는 32비트 IP 주소를 하드웨어 주소(MAC address)로 바꾸어서 기억하는 곳
- ARP 캐시를 통해 현재 들어와 있는 호스트에 대한 정보를 얻을 수 있음.
- 15분 정도 쓰이지 않은 MAC 주소는 ARP 캐시에서 제거됨.
arp [option] |
(5) ping(packet internet groper)
- 인터넷 제어 메시지 프로토콜인 ICMP(Internet Control Message Protocol)을 이용하여 네트워크 연결을 확인할 수 있는 명령
- 원격의 호스트(로컬 호스트 포함)와 서로 연결이 되어 있는지를 확인하고, 패킷을 보내고 받는 시간을 출력하여 네트워크 장애 여부도 판단할 수 있음.
- 최근에는 라우터나 방화벽에서 ICMP 프로토콜을 차단하여 ping이나 traceroute 같은 명령을 제한하는 곳이 많아지고 있음.
ping [option] Hostname 또는 IP_Address |
(6) traceroute
- 패킷이 특정 호스트까지 라우팅되는 과정을 출력하는 명령
- 라우팅 과정에서 어떤 장애가 있을 경우에 위치를 파악할 수 있음.
traceroute Hostname 또는 IP_Address |
- 사용 예
# traceroute www.idh.or.kr // www.idh.or.kr까지의 지의 라우팅되는 과정 출력 |
(7) nslookup
- DNS(Domain Name Server)를 이용하여 도메인이나 IP를 조회하는 명령
- 셸 상에서 직접 조회할 수도 있고, nslookup 명령 실행 후에 대화형으로 조회할 수도 있음.
- nslookup이라는 명령어만 실행하면 '>' 프롬프트가 나타나면서 대화형 모드로 접속함.
nslookup [option] Hostname 또는 IP_Address |
- 주요 옵션
- -type='서버타입' : 서버 타입에는 mx(메일 서버), ns(네임 서버) 등을 조회할 수 있음
(8) dig
- 도메인명(FQDN: Fully Qualified Domain Name)으로 정보를 조회하는 명령
dig [option] 도메인명 [type] |
- 주요 옵션
- -t : 질의 타입 지정, 기본값은 IP를 조회하는 A
(9) host
- 도메인명으로 정보를 조회하는 명령
host [option] 도메인명 |
- 주요 옵션
- -t : 질의 타입 지정
- -v : 지정한 도메인에 대한 자세한 정보 출력
- -a : -v와 같지만, MX, NS 등의 타입 값 위주로 출력
(10) hostname
- 시스템에 설정된 호스트네임을 출력하거나 설정하는 명령
hostname [option] [hostname] |
- 주요 옵션
- -v : 자세한 호스트명 정보 출력
- -d : 도메인명만 출력
- -f : 완전한 호스트명(FQDN) 출력
- -a : 호스트명에 대한 Alias 명령 출력
- -i : 호스트명에 설정된 IP 주소 출력
(11) mii-tool(Media Indepdent Interface Tool)
- 보통 네트워크 인터페이스의 상태를 점검하고 설정하는 유틸리티
mi-tool [option] 네트워크_장치명 |
- 주요 옵션
- -r : 네트워크 인터페이스 자동 인식을 위해 재시작 (--restart)
- -F : 강제로 설정 (--force)
- -v : 관련 정보를 자세히 출력 (--verbose)
(12) ethotool
- .이더넷 카드 설정 정보를 출력하거나 변경하는 명령
ethtool ethx |
- 주요 옵션
- -s : 이더넷 카드의 설정을 변경할 때 사용 (--change)
(13) ip
- 이더넷 장치, IP 주소, 라우팅 정보 등의 설정 정보를 출력하거나 변경하는 명령
ip [options] 대상 [command] |
- 주요 대상
- address : IPv4 또는 IPv6 주소
- route : 라우팅 테이블 목록
- link : 네트워크 장치
- 주요 command
- show, list : 대상에 대한 정보 출력 (디폴트 설정)
- add : 대상에 대한 특정 정보를 추가하거나 설정
- delete, del : 대상에 대한 특정 정보 삭제
(14) ss(socket statistics)
- 소켓 상태를 출력해주는 명령
- netstat 명령과 유사
- 다른 도구에 비해 TCP 및 상태 정보에 더욱 많은 정보를 제공
ss [options] [필터] |
(15) telnet
- 원격지 텔넷 서버에 접속할 때 사용하는 명령
- 최근에 텔넷 서버 대신에 ssh 서버를 더 많이 이용하면서, telnet 명령을 텔넷 서버에 접속하는 목적보다 서버의 포트 점검에 더 많이 이용하고 있음.
- 텔넷을 이용하기 위해서는 원격지이 시스템에 텔넷 서버를 구성해야 함.
- 서버 쪽에는 telnet-server라는 패키지를 설치해야 하고, 클라이언트에서는 telnet이라는 패키지를 설치하면 telnet 이라는 명령으로 원격지에 접속할 수 있음.
telnet [option] Hostname 또는 IP_Address [port] |
- 포트 번호를 입력하지 않으면 기본적으로 23번으로 지정됨.
(16) ftp
- FTP(File Transfer Protocol) 서버에 접속할 때 사용하는 클라이언트 명령
ftp Hostname 또는 IP_Address |
내용 출처 : 리눅스마스터 1급 정복하기(정성재, 배유미 공저, 북스홀릭)
'Certificate > Linux Master' 카테고리의 다른 글
포트 번호(Port Number) (0) | 2021.02.10 |
---|---|
인터네트워킹(Internetworking) 장비 (0) | 2021.02.10 |
운영체제의 주요 역할 및 특징 (0) | 2021.02.10 |
인터넷 계층 관련 프로토콜 (IP, ICMP, ARP) (0) | 2021.02.10 |
데몬 프로세스 실행 방법 (0) | 2021.02.10 |
LVM(Logical Volume Manager) (0) | 2021.02.10 |
RAID(Redundant Array of Independent[Inexpensive] Disks) (0) | 2021.02.10 |
라이선스(License) (0) | 2021.02.10 |