텍스트 기반 유틸리티를 사용하여 네트워크 설정
setup 명령 후 Text Mode Setup Utility 메뉴에서 Network configuration 선택
Device Configuration 선택하여 이더넷 카드 IP 주소 설정
DNS configuration 선택하여 DNS 서버 설정
설정 후 네트워크 데몬 재시작
CLI 환경에서 명령어를 이용
ifconfig eth0 192.168.1.10 netmask 255.255.255.0 up
route add -net 192.168.1.0 netmask 255.255.255.0 eth0
route add default gw 192.168.1.1
이미 설정한 내용을 편집
/etc/sysconfig/network , /etc/sysconfig/network-scripts/ifcfg-eth0 , /etc/resolv.conf 등의 파일에 저장되어 있는 내용을 수정한다. 그후 데몬을 재시작한다.
/etc/rc.d/init.d/network restart , /etc/init.d/network restart , service network restart
네트워크 관련 명령어
ifconfig
interface config 로 네트워크 인터페이스를 설정하거나 확인가능
ifconfig (interface) (address) (option)
ex)
ifconfig eth0 down : eth0 중지 == ifdown eth0
ifconfig eth0 up : eth0 활성화 == ifup eth0
ifconfig eth0 192.168.1.2 netmask 255.255.255.0 broadcast 192.168.1.255 up : eth0에 IP 주소, 서브넷마스크, 브로드캐스트 주소를 할당하고 활성화 각 따로 명령도 가능하다.
route
라우팅 테이블의 정보를 출력하거나 설정한다. 네트워크 주소, 게이트웨이 주소
route (add|del) (-destination) (netmask) (gw) (dev 인터페이스)
Destination : 목적지 네트워크 주소
Gateway : 목적지 주소로 보내기 위한 게이트웨이 주소. 자신의 네트워크 인터페이스와 직접 연결 시 * 표시
Genmask : 목적지 주소를 알아내기 위한 넷마스크 IP 주소에 Netmask를 AND 연산하면 알 수 있다.
Flags : 목적지 네트워크와의 연결 상태 ( U : 인터페이스 사용중, G : 게이트웨이로 사용중, H : 단독 호스트만 접근 가능, D : 엔트리 테이블 설정된 경우 ICMP 리다이렉트 메시지로 운영, M : 엔트리 테이블 설정된 경우 ICMP 리다이렉트 메시지에 의해 수정됨)
Metric : 목적지 네트워크와의 거리. 라우터 하나당 1씩 증가
Ref : 다른 라우터가 목적지로 연결하기 위해 참조한 횟수
USE : 다른 라우터가 목적지로 연결하기 위해 사용한 횟수
Ifcae : 목적지 네트워크와 연결된 인터페이스
netstat
네트워크 상태를 출력. 연결 상태, 라우팅 테이블 정보, 네트워크 인터페이스 상태, 매스커레이드 연결 상태, 멀티캐스트 멤버 등
netstat (option) (address_family_option)
옵션
-a : 모든 소켓 정보 출력
-n : 기호화된 호스트명이나 포트명 대신 숫자값으로 표현
-p : 소켓에 대한 PID와 프로그램명 출력
-r : 라우팅 테이블 출력
-l : 대기중인 Listen 포트 출력
-i : 네트워크 인터페이스 테이블 출력
-s : 네트워크 프로토콜 통계 출력
-c : 네트워크 정보를 계속적으로 출력
-t : TCP 프로토콜 기반 접속 목록 출력
-u : UDP 프로토콜 기반 접속 목록 출력
-g : 멀티캐스트 그룹 멤버의 정보 출력
address_family_option
--protocol=값 : inet, unix, ipx, ax25 등 특정 프로토콜과 관련된 정보 출력
--inet, --ip : 값에 inet을 넣었을 때의 결과 IP 주소 기반으로 연결된 정보 출력
--unix : 값에 unix를 넣었을 때의 결과로 UNIX Domain Soket에 대한 정보 출력. OS에서 실행되는 프로세스간의 데이터 교환을 위한 통신 연결 포인트
netstat의 상태
LISTEN 수신 대기중
SYS-SENT 로컬 시스템 클라이언트 애플리케이션이 원격 호스트에 연결을 요청중
SYN_RECEIVED 서버 시스템이 원격 클라이언트로부터 접속 요구를 받아 클라이언트에게 응답하고 확인 메시지 대기중
ESTABLISHED 3way-handshaking 종료 후 서버와 클라이언트가 서로 연결된 상태
FIN-WAIT1 소켓이 닫히고 연결이 종료된 상태
FIN-WAIT2 연결은 종료되었지만 소켓은 원격 클라이언트로부터 메시지 대기중
CLOSE-WAIT 원격 호스트는 종료된 상태 소켓 종료를 대기중
CLOSING 확인 메시지가 분실된 상태
TIME-WAIT 패킷 처리는 끝났지만 느린 세그먼트를 위해 소켓을 열어둔 상태
CLOSED 소켓 연결 종료
LAST_ACK 원격 호스트가 종료되고 소켓도 닫힌 상태에서 마지막 ACK 대기중
UNKNOWN 소켓 상태를 확인할 수 없는 상태
arp
address resolution protocol 캐시를 관리하는 명령어로 현재 접속된 32비트 IP 주소를 MAC 주소로 바꾸어 기억하는 곳
arp(option)
-a | ARP 캐시에 기록된 정보 중 특정 호스트를 출력 |
-d | ARP 캐시에서 기록된 정보 삭제 |
-n | 출력 정보를 도메인 주소가 아닌 IP 주소로 출력 |
-v | 자세한 정보 출력 |
ping
packet internet groper는 인터넷 제어 메시지 프로토콜인 ICMP를 이용하여 네트워크 연결을 확인하는 명령어
ping (option) hostname 또는 ip 주소
-c 개수 | 몇 개의 패킷을 보낼것인가 default 무한 |
-i 초 | 몇 초 간적으로 보낼것인가 default 1 |
-s 패킷크기 | 전송하는 패킷의 크기를 byte 단위로 설정 default 56byte + ICMP 헤더 8byte 합쳐 64byte |
-w 초 | 패킷을 보내고 몇 초 후에 멈춘다. |
traceroute
패킷이 특정 호스트까지 라우팅 되는 과정을 전부 출력하는 명령어 장애 파악에 유용
TTL을 라우터를 지날때마다 늘려가며 전송하여 각 단말이 ICMP time exceed를 발생시켜 확인하는 방법으로 네트워크 부하를 막기위해 방화벽으로 막는 경우가 있다.
traceroute hostname 또는 ip 주소
nslookup
DNS를 이용하여 도메인이나 IP를 조회하는 명령어
nslookup (option) hostname 또는 ip 주소
-type='서버타입' | 서버 타입에는 nm(네임서버), mx(메일서버) 등이 있다. |
dig
도메인명으로 조회하는 명령어
dig (option) 도메인명 (type)
type에는 mx, ns, A, ANY 등 DNS 서버 설정 값을 지정할 수 있다. -t옵션 동일
-t | 타입을 지정하는 옵션 default 는 ip 주소를 조회하는 A. MX, NS |
host
도메인명으로 조회하는 명령어
host (option) 도메인명
-t | MX, NS 등 질의 타입 값을 지정 default는 A |
-v | 도메인에 대한 자세한 정보 출력 |
-a | -v와 같지만 타입 값 위주로 출력 |
hostname
시스템에 설정된 호스트네임을 출력하거나 변경
hostname (option) (hostname)
-v | 자세한 호스트 정보 출력 |
-d | 도메인명만 출력 |
-f | 완전한 호스트(FQDN)명 출력 |
-a | 호스트명에 대한 Alias명 출력 |
-i | 호스트명에 설정된 ip 주소 출력 |
mii-tool
Media Independent Interface Tool 네트워크 인터페이스의 상태를 점검하거나 설정하는 유틸리티
mii-tool (option) 네트워크_장치명
-r | 네트워크 인터페이스 자동 인식을 위해 재시작(--restart) |
-F | 강제로 설정(--force) |
-v | 자세한 정보 출력 (--verbose) |
ethtool
이더넷 카드 설정을 출력하거나 변경
ethtool (option) eth숫자
-s | 설정을 변경함 (--change) |
ex) ethtool -s eth0 speed 1000 duplex full autoneg off
ip
이더넷 장치, ip 주소, 라우팅 정보 등의 설정을 출력하거나 변경
ip (option) 대상 (command)
address | IPv4 또는 IPv6 주소를 출력 (addr, a, ad 약어 가능) |
route | 라우팅 테이블 목록 출력 (약어가능) |
link | 네트워크 장치를 의미 link set 대상 up/down 으로 활성화/비활성화 하거나 address로 MAC 주소 설정한다. |
show, list | 대상 정보 출력 default값 |
add | 대상에 특정 정보를 추가하거나 설정한다. |
delete, del | 대상에 특정 정보를 삭제한다. |
ss
socket statistics 소켓 상태를 출력해주는 명령. TCP 에 특화
ss (options) ( 필터 )
ss state TCP-상태값 표현식 형태로 사용 가능하다.
-a | 소켓의 모든 정보 출력 (--all) |
-n | 서비스명으로 resolving 하지 않고 숫자값으로 출력 (--numeric) |
-r | 숫자값 형태의 주소나 포트 정보를 호스트명이나 서비스 명으로 resolving (--resolving) |
-l | 서비스 연결을 위해 대기 중인 소켓 출력 (--listening) |
-o | timer 관련 정보 출력 (--options) |
-e | 소켓 정보 확장 출력 (--extend) |
-p | 사용중인 소켓 프로세스 출력 (--processes) |
-i | 시스템 내부의 tcp 정보 출력 (--info) |
-s | 소켓 관련 상태 정보 요약 (--summary) |
-4 | IPv4 관련 정보 출력 (--ipv4) |
-6 | IPv6 관련 정보 출력 (--ipv6) |
-0 | PACKET 소켓 정보 출력 (--packet) |
-t | TCP 관련 소켓 정보만 출력 (--tcp) |
-u | UDP 관련 소켓 정보만 출력 (--udp) |
-x | 유닉스 도메인 소켓 정보만 출력 (--unix) |
-f 패밀리명 | 소켓의 타입을 지정해 출력 (--family=패밀리명) 패밀리명에는 unit, inet, inet6, link, netlink |