유용한 모든 것

리눅스마스터 2급2차 [네트워크]

뭉지(moonz) 2020. 8. 25. 15:27
반응형

네트워크 설정과 관련된 파일들이나 명령어가 많으니 정리해보겠다.

 

# 네트워크 설정파일

/etc/sysconfig/network  네트워크의 기본정보가 설정되어 있는 파일

/etc/sysconfig/network-scripts/ifcfg-ethX  지정된 네트워크 인터페이스의 네트워크 환경 설정 정보

 

굳이 둘의 차이를 따지자면 /etc/sysconfig/network  파일에는 시스템 전체의 네트워크 연결 허용 유무, 전체 도메인명, 게이트웨이 주소, 게이트웨이로 연결된 장비명을 설정하고, 

/etc/sysconfig/network-scripts/ifcfg-ethX  파일에는 네트워크 장치명, IP주소환경(고정,유동), 브로드캐스트 주소, 호스트의 IP주소, 서브넷 마스크, 네트워크 주소, 부팅시 장비 활성화 유무, 네트워크 환경 지정 등을 설정한다.

데비안에서는 /etc/network/interfaces 라는데, 위 두개가 없는 파일이라고 해서 이걸 쳐보니 나왔다! VM Ware가 데비안 계열이었나보다ㅎㅎ..

 

/etc/resolv.conf  도메인명과 네임서버 설정 파일. (네임서버는 여러개 지정하여 첫번째가 작동하지 않으면 다음 네임서버가 작동함)

문제1) DNS 설정과 가장 관련있는 파일 : /etc/resolv.conf (+/etc/host.conf도 DNS 설정 파일)

도메인명은 나오지않았지만 네임서버가 적혀있는 것을 볼 수 있다.

/etc/hosts  IP주소와 도메인 주소를 1:1로 등록해논 파일

DNS질의를 거치지 않고 직접적으로 IP주소를 획득할 수 있다.

위의 소수점 표현이 IPv4이고

아래가 서브넷 마스크 양식을 사용하지 않은 IPv6이다.

 

 

/etc/host.conf  DNS 서비스를 제공할 때 먼저 이 파일을 검사하여 파일의 설정에 따라 서비스함.

 

# TCP/IP 관련 설정 명령어

 IP 주소 설정

① 네트워크 설정 파일로 주소 설정 : 파일 /etc/sysconfig/network 또는 /etc/sysconfig/network-scripts/ifcfg-ethX로 IP주소 할당. (위에서 설명)

명령어 ifconfig 로 IP 주소 할당

[형식] ifconfig 인터페이스명 <IP주소> netmask <addr> [broadcast <addr>] [up|down]

ifconfig eth0 192.168.10.30 netmask 255.255.0 up  인터페이스 eth0의 IP주소를 192.168.10.30 으로 할당.

ifconfig eth0 192.168.10.30 netmask 255.255.255.0 broadcast 255.255.255.0 up  예제1+브로드캐스트 주소까지 할당.

* ip addr add 명령어 또한 지정된 인터페이스에 IP주소를 지정할 경우에 사용됨.

ex) # ip addr add 192.168.0.109/24 dev eth1

 

③ 유틸리티를 이용한 주소 설정 : netconfig, system-config-network, redhat-config-network 등 다양한 유틸리티를 이용하여 주소 할당.

 

◦ 라우팅 테이블 설정 및 관리

; 라우팅  송신 패킷이 목적지까지 전송할 수 있도록 경로 설정 작업

; 송신 패킷은 라우팅 테이블에 목적지 경로 정보가 있다면 해당 경로로 패킷 전송.

; 명령어 route  라우팅 테이블을 설정 & 확인

[형식] route <add|del> [-net|-host NETaddr] [netmask MASKaddr] [[dev] 인터페이스명]

route add -net 192.168.10.0 mask 255.255.255.0 dev eth0  목적지 네트워크 192.168.10.0/24을 향하는 트래픽들은 인터페이스 eth0로 전송함.

If 목적지 경로가 라우팅 테이블에 없다면 디폴트 게이트웨이로 트래픽을 전송할 수 있게 라우팅 테이블 설정할 수 있음.

[형식] route add default gw <GW> dev <인터페이스명>

route add default gw 192.168.10.2 dev eth0

 

# 네트워크 관련 명령어 (정보 확인 명령어)

TCP/IP 주소 설정 정보 확인 ifconfig, nslookup
네트워크 경로 상태 확인 ping, traceroute
네트워크 연결 상태 확인 netstat
라우팅 테이블 확인 route
NIC 상태 확인 ethtool, mii-tool, arp

* NIC란?  Network Interface Card, 네트워크 장비. (랜카드로도 불림)

요즘엔 P&P로 자동으로 네트워크와 프로그램이 연결되지만, 이는 네트워크 상에서 컴퓨터 간의 통신을 위해 케이블을 사용할 때, 이 케이블을 컴퓨터에 연결하는 매개체 역할을 함.

즉, 데이터를 수신하고 전송하며 데이터 흐름을 제어하는 역할을 한다.

 

ifconfig  네트워크 인터페이스 구성을 위한 설정 or 확인하는 시스템 관리 유틸리티

- 이더넷/루프백 인터페이스명

- ens33 인터페이스의 MAC 주소

- IP주소, 브로드캐스트 주소, 서브넷 마스크

- 인터페이스 운영 상태 (UP | DOWN)

- TX : 송신 패킷 수

- RX : 수신 패킷 수

 

 

 

ping 호스트명 특정 호스트 or 네트워크 장비까지의 통신 가능 여부를 점검하는 ICMP 기반의 명령어

traceroute 호스트명  특정 호스트 or 네트워크 장비까지의 어떤 통신경로를 걸쳐 패킷이 전달되는지 확인 명령어

route  라우팅 테이블(시스템에 설정된 게이트웨이 주소값 확인가능) 확인하거나 변경할 때 사용하는 명령어

nslookup 호스트명  인터넷 도메인 네임서버에게 특정 호스트에 대한 정보를 질의 하는 대화식 명령어 (서버 주소 등)

netstat [옵션]  전송 제어 프로토콜, 라우팅 테이블, 수많은 네트워크 인터페이스, 네트워크 프로토콜 통계 및 네트워크 연결 상태를 확인할 수 있는 명령어 / TCP와 UDP를 사용하는 애플리케이션의 연결을 확인하는 명령어

옵션 기능
-r 라우팅 테이블 내용 표시 (route)
-e 랜카드에서 송신한 패킷의 용량 및 종류 확인
-n IP 주소형태로 주소와 포트 번호 표시 (number)
-i 인터페이스의 정보 출력 (interface)
-s 각종 프로토콜의 상태 보여줌 (IP, ICMP, TCP, UDP의 통계치 표시)
-c 1초 단위로 보여줌
-l 현재 LISTEN되고 있는 소켓 정보 표시 (listen)
-a 현재 다른 호스트와 연결되어있거나 대기 중인 모든 포트 번호 표시 (all)

옵션 -rn 사용한 예시

mii-tool 인터페이스명  네트워크 인터페이스의 속도와 전송모드 확인하는 명령어

ethtool 인터페이스명  네트워크 인터페이스의 물리적 연결 여부를 확인하는 명령어 (유틸리티 mii-tool보다 상세한 네트워크 인터페이스의 상태 정보 확인 가능)

arp [옵션]  시스템이 가지고 있는 arp 테이블을 확인/추가/삭제하는 명령어

arp -a 는 arp 테이블 확인

arp 는 목록으로 확인(더 구체적)

arp -s IP주소 MAC주소  IP주소와 MAC주소를 테이블에 추가하는 옵션 '-s'

 

*arp란?  Address Resolution Protocol, 주소 결정 프로토몰, 해당 IP에 맞는 물리적 하드웨어 주소(MAC)를 가지고 오는 프로토콜

반대로 rarp는 MAC주소에 맞는 IP값을 알아오는 프로토콜)

 

문제2) 라우팅 경로를 확인하거나 변경할 때 사용하는 명령어 : route

문제3) 네트워크 인터페이스의 물리적 연결 여부를 확인할 수 있는 명령어 : ethtool

 

반응형