본문 바로가기
개발 저장소/리눅스 서버

리눅스 네트워크 확인 명령어 모음

by 팡삼이 2016. 7. 15.
   - ip 정적 설정 파일 -      ksb=호스트명
1./etc/hosts
192.168.100.10 ksb    <-- 아이피와 호스트를 매핑시킴 아이피만 적어도 ok

2. /etc/hostname.e1000g0 <--매핑된 ksb를 입력,매핑이 안됐을 시 ip주소쓰면됌
[호스트명] ex)ksb

3. /etc/nodename       <--호스트 이름을 설정하는 파일
[호스트명] ex) ksb

4. /etc/netmasks         <--네트워크 아이디 설정 
[네트워크 id] [서브넷 마스크] ex)192.168.100.0 255.255.255.0

5. /etc/defaultrouter    기본 게이트웨이 설정
[게이트 웨이 ip주소] ex)192.168.100.2

6. /etc/resolv.conf      네임서버를 설정할 아이피 입력 
nameserver [dns 서버 ip 주소] ex) 168.126.63.1


리눅스서버 IP주소 할당 및 변경하는 방법.
 · 방법 1 : ifconfig, netstat, route
 · 방법 2 : redhat-config-network 또는 system-config-network 또는 netconfig.
 · 방법 3 : /etc/sysconfig/network, /etc/sysconfig/network-scaripts/ifcfg-eth0 파일.

  ifconfig 이용
  - ifconfig eth0 down : ip정보를 삭제.
   → eth0라는 인터페이스를 사용하지 못하게 되어 eth0를 통한 통신은 안됨.
  - ifconfig eth0 up : 다운시킨 eth0인터페이스를 다시 사용.
  - ifconfig 명령어를 이용하여 IP설정.
   → ifconfig eth0 192.168.0.100 netmask 255.255.255.0 broadcast 192.168.0.255 up


네트웍설정 파일들을 이용한 서버 IP주소 변경하는 방법
 · 네트웍주소 설정파일
  - /etc/sysconfig/network → HOSTNAME, GATEWAY 설정.
  - /etc/sysconfig/network-scripts/ifcfg-eth0
   /etc/sysconfig/network-scripts/ifcfg-eth1 
   ...
   /etc/sysconfig/network-scripts/ifcfg-ethn 
   → BROADCAST, NETWORK, NETMASK설정
 · 위의 두 파일 설정 후 네트워크 설정을 위해 사용할 네크워크 스크립트.
  - /etc/rc.d/init.d/network start|restart|stop

 · netstat를 통해서 라우팅 정보 확인. : netstat -nr

한 대의 리눅스에서 여러개의 IP주소 할당하여 사용하기
 1) IP주소 하나를 사용중인 리눅스 서버의 초기 설정상황 확인
 2) 하나의 서버에 여러개의 IP주소 할당하기
  - /etc/sysconfig/network-scripts 디렉토리에서 ifcfg-eth0 파일을 여러 개 복사.
   → cp ifcfg_eth0 ifcfg-eth0:0 
     cp ifcfg_eth0 ifcfg-eth0:1
     cp ifcfg_eth0 ifcfg-eth0:2
     cp ifcfg_eth0 ifcfg-eth0:3

  - 복사된 각 파일마다 DEVICE 항목과 IPADDR 항목 수정
 3) 서버에 적용하기 위해 /etc/rc.d/init.d/network 스크립트를 이용하여 restart.
 4) ifconfig로 실제로 할당되었는지 확인.

4 netconfig를 이용한 네트워크 설정
 - /usr/sbin/netconfig 명령어 실행.

5 리눅스서버 HOSTNAME 변경하기
 - /etc/sysconfig/network 
 - hostname : 현재의 호스트명을 보여주는 명령어
 ex) hostname bible.superuser.co.kr : 일시적인 호스트명 변경. 재부팅시 원래의 호스트
  명이 그대로 설정. /etc/sysconfig/network 파일에 있는 호스트 정보값을 가져와 
  다시 재설정.

6 네트워크 통신 테스트 ping 활용 실무
 - ping이라는 명령어는 지정한 대상 호스트로 ICMP 패킷을 보내어 그 응답으로 받은 
  결과를 통하여 통신 상태를 점검하는 명령어. 
 - ICMP(Internet Control Message Protocol) : 호스트서버와 게이트웨이 사이에서 
  메시지를 제어하고 에러를 알려주는 프로토콜. 호스트가 살아있나를 확인.
 - 1회 테스트 할 때에 사용되는 패킷의 크기는 56bytes 사용. 
  8bytes라는 ICMP헤드를 함께보내므로 합하여 64bytes가 됨.
 - time 수치가 낮을수록 회선(네트웍)상태가 좋다는 것.
 - 옵션 
  · -s : 패킷 사이즈 크기 설정.   · -q : 종합 결과만 보여줌.
  · -i : interval을 설정(지연시간)  · -c : 패킷 수 지정. 
  · -b : ping테스트를 하는 서버와 동일한 네트웍에 있는 모든 호스트로 패킷보냄.

7 네트워크 통신 경로 확인하는 traceroute 활용 실무
 - 대상호스트까지의 통신경로를 추적하는 명령어.
 - 테스트 결과
  1. 대상 호스트까지의 통신이 잘 이루어지고 있는가?
   → 통신이 잘 이루어지지 않는 구간이 있으면 “ * ” 표시.
  2. 대상 호스트까지의 몇 개의 hop수(거쳐가는 게이트웨이 수)를 거쳐 통신이 되고 
   있는가?
  3. 대상 호스트까지의 통신에 있어 지연되는 구간은 없는가? 있다면 원인은??
   → ms수치가 평균치 이상 높은 경우.
  4. 대상 호스트까지의 통신경로상에 있는 특정 구간의 정보를 확인해볼수 있어야함


8 네트워크 라우팅 테이블 관리하는 route 활용 실무
 - route : 특정 네트웍 인터페이스에 라우팅 정보를 설정하는 명령어.
 - route add default gw 게이트웨이 IP주소 dev 네트웍인터페이스 장치명.
 - 현재 시스템의 특정 네트웍 인터페이스에 특정 네트웍경로 인식.
  → route add -net 네트웍IP주소 netmask 넷마스크 dev 네트웍인터페이스장치명

9. 네트워크 상황점검하는 netstat 활용 실무
 - netstat는 네트워크 연결, 라우팅 테이블, 네트워크 인터페이스상태등을 종합적으로 
  확인할 수 있는 명령어. 
 - 보안점검을 하는 방법으로도 많이 사용.
 - 옵션
  · -a : all 모두 보여줌.     · -n : 10진수의 수치정보로 결과 출력
  · -r : route와 같음.      · -p : 실행되고 있는 프로그램과 PID정보 출력
  · -i : 네트웍 인터페이스 정보. · -c : 연속적으로 출력
  · -l : listen되고 있는 소켓정보 출력 
  · -s : 각 프로토콜에 대한 통계정보 출력.
 - LISTEN : 연결이 가능함.
  SYS-SENT : 연결을 요청한 상태.
  SYN_RECEIVED : 연결요구에 의한 응답 준 후에 확인 메시지 기다리는 상태.
  ESTABLISHED : 앞의 3단계 연결과정이 모두 종료된 후에 연결이 완료된 상태.
  FIN-WAIT1, CLOSE-WAIT, FIN-WAIT2 : 연결종료를 위해 종료요청을 받은 후의 
   종료과정.
  CLOSING : 전송된 메시지가 유실된 상태.
  TIME-WAIT : 연결종료 후에 한동안 유지하고 있는 상태
  CLOSED : 연결이 완전히 종료.

10. 네트워크 사용기관 정보 확인하는 whois 활용
 - 특정 도메인 정보나 특정 IP Address 또는 특정 네트웍을 사용하고 있는 
  기관정보를 조회.
  1) 국내 도메인 사용기관 정보 조회
   - 리눅스 쉘 : whois -h whois.krnic.net 대상도메인(또는 IP Address)
   - 웹에서의 조회 URL : http://whois.nic.or.kr
  2) 국제 도메인 사용지관 정보 조회
   - 리눅스 쉘 : whois -h whois.interrnic.net 대상도메인(또는 IP Address)
   - 웹에서의 조회 URL : http://www.networksolution.com/en_US/whois/index.jtml

11. ethtool을 이용한 랜카드 속도설정과 전송모드 설정하기
 - 이더넷 설정확인 : ethtool eth0
 - 이더넷 설정변경 : ethtool -s eth0 [speed 10|100|1000] [duplex half|full]
          [autoneg on|off]

12. tcpdump를 이용한 TCP 패킷캡쳐 및 패킷데이터 모니터링하기.
 - tcpdump는 지정한 네트웍 인터페이스로 송수신되는 데이터 패킷들의 전체 혹은
  헤드등을 모니터링 또는 덤프하여 확인하는 명령어.
  · -i : 대상 네트웟 인터페이스 지정. ex) tcpdump -i eth0
  · -w : 지정한 파일에 저장. ex) tcpdump -i eth0 -w TCPDUMP(파일이름)
  · -r : 패킷 헤드가 저장된 파일을 텍스트포맷으로 확인. ex)tcpdump -r TCPDUMP
  · -c : 확인하고자 하는 패킷헤드의 개수 지정. ex) tcpdump -i eth0 -c 10
 - 서버의 특정포트로 송수신되는 모든 데이터패킷 전체를 확인하기
  · tcpdump -w tcpdump.log -s 1500 tcp port 22 and host 192.168.0.100
   → 현재 로컬 서버와 192.168.0.100서버사이의 통신데이터패킷 중 tcp22번 포트의 
   모든 패킷을 1500길이로 캡쳐하여 tcpdump.log파일에 저장.
  · tcpdump.log 파일의 내용을 ASCII 모드로 확인하는 방법.
   → tcpdump -Xqnr tcpdump.log

13. mii-tool을 이용한 네트워크 인터페이스 설정확인.
 - 현재 서버에 장착되어 있는 랜카드 설정상황 확인 
 - 옵션
  · -v : 자세한 내역 확인     · -r : 재설정

14. modprobe를 이용한 랜카드 모드 설정확인 및 변경하기
 - 이더넷의 설정을 확인하고 변경.
 - lsmod : 현재 로드되어 있는 모듈확인.
  /etc/modules.conf : 모듈명의 확인.
 - modprobe 랜카드모듈명 speed_duplex=설정번호
  · speed_duplex=0 : auto detection 모드. 
   → 속도는 10M로 설정. duplex는 자동검출모드로 설정
  · speed_duplex=1 : 10M, half duplex 모드. 
  · speed_duplex=2 : 10M, full duplex 모드. 
  · speed_duplex=3 : 100M, half duplex 모드. 
  · speed_duplex=4 : 100M, full duplex 모드.

ping 
상대방과 통신을 하는 장비인 라우터, 스위치, 서버, 컴퓨터에는 외부통신용 NIC 카드가 내장되어 있으며, IP 주소를 할당해서 사용하고 있다. ping(packet internet groper)은 상대방 컴퓨터, 네트워크 장비, 서버 장비까지 통신이 잘 되는지를 확인하는 명령이다.


‘Request timed out' 원인 

1.케이블 연결이 잘못됨
2. 상대방 컴퓨터 IP주소가 잘못됨
3.상대방 컴퓨터가 종료된 상태 or 인터넷 연결 x


윈도우 - tracert 리눅스-traceroute 
인터넷은 접속하려는 상대편 컴퓨터(서버)와 직접적으로 연결되어 있지 않고 중간 중간에 네트워크 장비를 거쳐 접속이 된다. tracert(trace route)는 최종 목적지 컴퓨터(서버)까지 중간에 거치는 여러 개의 라우터에 대한 경로 및 응답속도를 표시해 준다.


댓글