네트워크 설정과 관련된 파일들이나 명령어가 많으니 정리해보겠다.
# 네트워크 설정파일
/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) |
⑦ 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
'유용한 모든 것' 카테고리의 다른 글
티스토리에 PDF 올리기 (구글 드라이브 이용) (0) | 2021.04.01 |
---|---|
jupyter notebook을 html로 전환하기 (2) | 2021.02.17 |
리눅스마스터 2급 2차 [프로세스] (0) | 2020.08.25 |
리눅스마스터 2급 2차 [셸] (0) | 2020.08.25 |
리눅스마스터 2급 2차 [파일 시스템] (0) | 2020.08.24 |