Search
🌐

Network

Date
2024/12/02
Category
Devops
Tag
Linux
목차

네트워크 인터페이스

ifconfig

네트워크 인터페이스의 설정과 상태 정보 출력
주요 인터페이스
enp0s3: 기본 네트워크 인터페이스
lo: 기본네트워크 인터페이스 (루프백 인터페이스)
flags: 인터페이스 상태와 옵션
MTU: Maximum Transmission Unit (최대 전송 단위, 기본값 1500 바이트)
IP 정보: inet, netmask, broadcast
패킷 통계:
RX (수신):
packets: 수신된 패킷 수
bytes: 수신된 데이터 바이트 수
errors, dropped, overruns, frame: 수신 중 발생한 오류 및 드롭된 패킷 수
TX (전송):
packets: 전송된 패킷 수
bytes: 전송된 데이터 바이트 수
errors, dropped, overruns, carrier, collisions: 전송 중 발생한 오류 및 드롭된 패킷 수

ip

ifconfig가 제공하지 않는 다중주소지원, 인터페이스 상태 관리 등 제공
주요 기능
# IP 주소 추가 및 삭제 sudo ip addr [add|del] [IP주소] dev [인터페이스] # sudo ip addr add 192.168.100.55/24 dev enp0s3 # 네트워크 인터페이스 상태 확인 ip addr show # 인터페이스 활성화/비활성화 sudo ip link set [인터페이스] up/down
Bash
복사

Host & Domain

host, nslookup, dig, whois
호스트 IP 주소 및 도메인명 확인
ping
접속 확인 명령어
ping IP주소 형태로 사용
송신 패킷 수, 수신 패킷수, 패킷 손실률, 명령어 실행 시간 등의 정보 확인 가능

Packet 경로

tracepath, traceroute : 패킷 경로 출력
hop
목적지까지 거쳐야 하는 라우터 개수
최대 30으로, 그 이상은 종료
* * *
ICMP(ping) 차단 또는 방화벽 필터링으로 응답받지 못한 경우

네트워크 상태

netstat

네트워크 상태 확인 명령어
연결, 라우팅테이블, 인터페이스 상태, 프로토콜 통계 등 확인 가능
netstat [options] # 자주 사용하는 명령어 netstat -nlpt
Bash
복사
-t
TCP 연결 정보 표시
-u
UDP 연결 정보 표시
-n
숫자 형식으로 IP 주소와 포트 표시
-a
모든 연결 표시 (리스닝 및 연결 상태)
-r
라우팅 테이블 표시
-l
리스팅 상태인 소켓 표시
-p
소켓 표시

방화벽

ufw

Uncomplicated Firewall, 서버 간 통신에서 인바인트, 아웃바운드 정책 설정을 통해 통신 가능
방화벽 처리부: 실제 네트워크 패킷 필터링
방화벽 제어부: 네트워크 패킷 필터링 정책
# 상태확인 sudo ufw status # 방화벽 설정/해재 sudo ufw [enable/disable] # 특정 포트 허용/차단 sudo ufw [allow/deny] port_number # 특정 ip 허용 sudo ufw allow from [IP address] to any port [port_number] proto tcp # 방화벽 규칙 삭제 sudo ufw delete [allow/deny] port_number
Bash
복사

데이터 전송

wget, curl

파일 다운로드 시 사용하는 명령어
wget [options] [주소/자원명]
-b
백그라운드 다운로드
-i 파일명
지정 파일내 URL 다운로드
-r
관련 링크 파일 다운로드
-c
이어받기 다운로드
curl [options] [주소/자원명]
-0
자원 자체의 이름으로 저장
-o 파일명
요청 주소/자원을 -o 지정 파일로 저장

scp

SSH 기반 파일 전송 프로토콜로, FTP보다 속도가 빠름
scp [options] [username]@[ip_address]:[file 저장 경로]
-P
포트 지정
-r
디렉토리의 하위 폴더, 파일 모두 복사
-p
복시시 원본 파일의 수정/사용시간, 권한 모두 유지
-c
압축 후 복사
-v
처리 과정 출력

파일 압축

gzip(.gz), xz, bzip2(.bz2), zip(.zip)
tar [options] filename path
Bash
복사
-f
대상파일 tar 아카이브 지정 (기본값)
-c
tar 아카이브 생성
-x
tar 파일 추출
-v
처리 과정 출력
-z
gzip 압축 적용
-j
bzip2 압축 적용
-t
tar 아카이브 내용 확인

주사용

tar -cvf [아카이브 이름] [파일/디렉토리] : 아카이브 이름으로 파일/디렉토리 압축
tar -xvf [아카이브 이름].tar : 압축 파일 해제