Linux IP Commands
Udemy - CKA 강좌의 Linux Network에 대한 부분을 듣고, 공부한 내용을 정리한 포스트입니다. CKA 시험을 합격하고 되돌아보니 CKA 시험에 이 부분은 너무 지엽적인 부분이었습니다. Linux Network의 ip
명령어들의 종류만 훑고 넘어갑시다!
명령어 | 설명 |
---|---|
link |
네트워크 인터페이스 CRUD |
addr |
네트워크 IP 주소 CRUD |
route |
SKIP |
netns |
SKIP |
ip link
현재 시스템의 네트워크 디바이스들을 확인할 수 있다.
# `ip link show`와 동일
$ ip link
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT group default qlen 1000
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
...
실제 명령어로는 모든 인터페이스를 확인할 수 있지만, 이 포스트에선 1번 디바이스인 루프백(lo
) 인터페이스의 정보만 살펴보자.
mtu 65536
mtu
는 Maximum Transmission Unit의 약자- 루프백 인터페이스로 최대
65536 byte
1의 패킷 보낼 수 있다. 만약 이 사이즈를 넘는다면, 패킷은 작은 조각으로 쪼개어 전송될 것이다.
qdisc nonqueue
qdisc
는 Queuing Discipline의 약자- 인터페이스가 다음 패킷을 전송하는 정책을 말한다.
noqueue
의 의미는 인터페이스가 아무런 큐도 사용하지 않음을 말한다.
state UNKNOWN
- 네트워크 인터페이스의 상태로는
UP
,DOWN
,UNKNOWN
이 가능하다.UP
이면 활성화,DOWN
이면 비활성화 상태다.
- 네트워크 인터페이스의 상태로는
mode DEFAULT
group default
qlen 1000
qlen
은 Transimission Queue Length의 약자다- 1000개 패킷까지 큐에 저장되고, 1001개 패킷부터 드롭된다.
link/loopback
- 루프백 인터페이스를 말한다.
brd
- Broadcast를 의미한다.
- 여기서는 네트워크 인터페이스 이므로 MAC 주소의 연결 정보가 담겨있다.
ip addr
$ ip addr
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
inet 127.0.0.1/8 scope host lo
valid_lft forever preferred_lft forever
...
네트워크 인터페이스 별로 할당된 IP 주소들을 볼 수 있다. ip link
명령어의 출력과 유사하지만, 마지막에 인터페이스에 할당된 CIDR 값이 보인다.
출력값을 보면 익숙한 이름인 127.0.0.1
주소가 보인다. 로컬 호스트의 주소다! 즉, 우리가 127.0.0.1
했을 때, 로컬 호스트에 데이터를 전송할 수 있는 이유가 루프백 인터페이스에 할당되어 있기 때문이다!
정확히는 127.0.0.1/8
CIDR이 루프백 인터페이스에 할당되어 있기 때문에 127.0.0.1 ~ 127.255.255.255
범위의 모든 IP 주소는 로컬 호스트를 가리킨다.
inet
은 네트워크 레이어의 프로토콜로 inet
이면 ipv4를 inet6
면 ipv6이다.
lft
는 Lifetime의 약자로 루프백의 IP 주소가 평생 유효하게 설정 되어 있다.
루프백 주소 추가하기
$ ip addr add 192.168.40.1/32 dev lo
References
- [stack exchange] ip link and ip addr output meaning
- [stack exchange] How to understand (the output of) ifconfig or ip addr show [closed]
-
65 Kb ↩