-
[One Sheeter] 네트워크 관련 Linux Command개발/네트워크 2023. 5. 21. 23:55
오래 전에 배웠던 네트워크가 기억 저편 속으로 사라지고 있어, 블로그들을 참고하여 한번 더 간단하게 정리했다.
아직까지는 리눅스 기반의 네트워크를 알 필요가 없는데, 언젠가 네트워크 관련 작업을 하고자 하는 나의 바람을 이룰 수 있기를...
1. ping [host name or IP address]
설명
- 대상 호스트에 연결이 되어있는지 확인하기 위해 ICMP(Internet Control Message Protocol)를 전송기능
- 웹 페이지가 표시되지 않을 때 클라이언트측의 문제인지, 호스트측의 문제인지를 확인
- 웹 서버 소프트웨어가 다운되어도 호스트가 살아있으면 응답을 받을 수 있음2. sudo netstat
설명
- netstat = Network Statistics : TCP-IP 커넥션 네트워크의 통계 정보를 제공
- 열려있는 포트와 동작하고 있는 소프트웨어 정보 확인 가능옵션
- a : 모든 패킷 정보 표시
- i : 네트워크 인터페이스 상태 표시
- n : 주소, 포트수치 표시
- p : PID와 프로세스 표시 (root 권한 필요)
- r : 루팅테이블 표시
- t : TCP만 표시
- u : UDP만 표시
- l : LISTEN인 상태만 표시결과 해석
- Proto : 프로토콜 종류. TCP / UDP / RAW
- Recv-Q : 해당 process가 현재 받는 바이트 표기
- Send-Q : 해당 process가 현재 보내는 바이트 표기
- Local Address : 출발지 주소 및 포트
- Foreign Address : 목적지 주소 및 포트
- State : 포트의 상태
- Local address는 현재 열려있거나 리스닝하고 있는 IP:Port
- 0.0.0.0은 all interface를 받는 것이고, 127.0.0.1은 loopback으로 자기자신만 호출 가능한 상태3. ifconfig
설명
- 네트워크 인터페이스 상태 표시 및 설정
- IP 확인을 위해 사용4. hostname [hostname]
설명
- hostname 표출 혹은 지정
- 인자로 hostname을 넘기면 지정됨
- 인자 없이 입력하면 현재 hostname을 표시
5. traceroute [hostname or IP]
설명
- 지정된 호스트까지 패킷이 전달되는 경로 표시
- ping이 날아가지 않을 경우, traceroute을 통해 호스트 자체에 문제가 있는지, 호스트에 도달하기까지 네트워크 경로중에 문제가 있는지 확인 가능원리
- traceroute는 IP 패킷의 Time to Live(TTL) 필드를 활용해 destination까지의 traffic path를 전달6. route
설명
- 기기의 라우팅 테이블을 반환
- IP 네트워크에서 라우팅 테이블은 특정 서브넷에서 다른 서브넷으로 패킷을 보내기 위해 활용사용법
- Destination : 수신처의 네트워크 또는 호스트
- Gateway : 게이트웨이 주소. [*]는 미설정
- Netmask : 수신처의 서브넷마스크
(호스트 255.255.255.255, 기본 게이트웨이 0.0.0.0)
- Flags : 경로 상태
(U: 경로 유효, H: 수신처는 호스트, G: 게이트웨이 사용, I:경로 무효)
- Metric: 수신처 까지의 거리
- Use : 경로의 참조 횟수
- Iface : 해당 경로를 사용하는 네트워크 인터페이스실사용
- 현재 라우팅 설정 확인 : $ route -n
- eth0의 기본 경로 설정 : $ route add default gw <Gateway> dev eth0
- eth1의 특정 호스트 라우팅 설정 : $ route add -host <Destination> gw <Gateway> dev eth1
- eth1의 특정 네트워크 라우팅 설정 : $ route add -net <Destination> netmask <Subnetmask> gw <Gateway> dev eth1
- eth0의 라우팅 테이블을 삭제 : $ route del [-net/-host] <Destination> netmask <Subnetmask> gw <Gateway> dev eth07. nmcli [OPTIONS] OBJECT {COMMAND}
설명
- Linux Network Manager를 제어하는 명령어
- network 상태를 볼 수 있는 명령어
- 수동인 경우사용법
- 모든 connection 표시 : $ nmcli con show
- ipv4 설정 : $ nmcli con mod "System eth0" ipv4.address 192.0.2.2/24 ipv4.gateway 192.0.2.254 ipv4.dns "8.8.8.8 168.126.63.1"
- ipv6 설정 : $ nmcli con mod "System eth0" ipv6.address 2001:db8:0:1::a00:1/64 ipv6.gateway 2001:db8:0:1::1
- DHCP 활성화
- 부팅시 자동 활성화
- 설정 상태보기
- 설정 반영
- 네트워크 상태보기
- 현재 서버에 설정한 호스트명 보기
- 디바이스 명령어
- 네트워킹 명령어
- 네트워크 활성화
8. ifup <device_name>
설명
- 이더넷 카드의 현재 설정을 유지 (/etc/sysconfig/network-scripts/ifcfg-(인터페이스명))한 상태로 디바이스를 구동시키고 다운시키는 작업을 하는 명령어
- 다운시키려면 ifdown 사용할 것
9. netconfig -d <device_name>
설명
- 리눅스에서 네트워크를 설정하기 위한 명령어참고
https://jaemunbro.medium.com/linux-network-%EB%AC%B8%EC%A0%9C%ED%95%B4%EA%B2%B0-%EA%B0%80%EC%9D%B4%EB%93%9C-for-beginners-b167d5175ef8
https://www.lesstif.com/system-admin/linux-network-manager-nmcli-77955300.html
https://m.blog.naver.com/PostView.naver?isHttpsRedirect=true&blogId=82hyde&logNo=90044476697'개발 > 네트워크' 카테고리의 다른 글
와이파이(Wi-Fi)의 통신 방식 (0) 2023.06.01 다중화(Multiplexing) 방식 정리 (0) 2023.05.31 네트워크 전송 매체 정리 (0) 2023.05.28 네트워크 통신 장치의 종류 (0) 2023.05.28 IP주소 이해하기 / CIDR / 네트워크 세그먼트 (1) 2023.05.16