목차
네트워크 인터페이스
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 : 압축 파일 해제