소개
이 랩에서는 다양한 방법을 사용하여 Linux 에서 네트워크 인터페이스의 최대 전송 단위 (MTU, Maximum Transmission Unit) 를 확인하는 방법을 배우게 됩니다. MTU 를 이해하는 것은 네트워크 성능 및 문제 해결에 매우 중요합니다.
최신 ip link show 명령, 전통적인 ifconfig 유틸리티를 사용하고, /sys/class/net 파일 시스템 내에서 네트워크 인터페이스 정보를 직접 검사하는 세 가지 다른 접근 방식을 탐구할 것입니다. 이 랩을 마치면 네트워크 인터페이스의 MTU 설정을 능숙하게 식별할 수 있게 됩니다.
ip link show 로 MTU 확인
이 단계에서는 ip link show 명령을 사용하여 네트워크 인터페이스의 최대 전송 단위 (MTU, Maximum Transmission Unit) 를 확인하는 방법을 배우게 됩니다. MTU 는 네트워크 인터페이스가 조각화 없이 처리할 수 있는 가장 큰 데이터 패킷 크기입니다. MTU 를 이해하는 것은 네트워크 문제 해결 및 성능 튜닝에 중요합니다.
ip 명령은 네트워크 인터페이스, 라우팅 및 터널을 관리하기 위한 Linux 의 강력한 도구입니다. link 하위 명령은 네트워크 인터페이스를 표시하고 수정하는 데 사용됩니다.
아직 열려 있지 않다면 터미널을 엽니다. 데스크탑 왼쪽의 Xfce 터미널 아이콘을 클릭하여 열 수 있습니다.
이제 다음 명령을 입력하고 Enter 키를 누릅니다.
ip link show
이 명령은 시스템의 모든 네트워크 인터페이스에 대한 정보를 표시합니다. 다음과 유사한 출력을 보게 됩니다.
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
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP mode DEFAULT group default qlen 1000
link/ether 02:42:ac:11:00:02 brd ff:ff:ff:ff:ff:ff
기본 네트워크 인터페이스에 해당하는 줄을 찾습니다. 이 환경에서는 일반적으로 eth0입니다. 거기에서 mtu 값을 찾을 수 있습니다. 위의 예에서 eth0의 MTU 는 1500입니다.
lo 인터페이스는 시스템 내부 통신에 사용되는 루프백 인터페이스입니다. MTU 는 일반적으로 훨씬 더 큽니다.
잠시 시간을 내어 출력을 검토하고 eth0 인터페이스의 MTU 를 식별하십시오.
다음 단계로 진행하려면 계속을 클릭하십시오.
ifconfig 로 MTU 확인
이 단계에서는 ifconfig 명령을 사용하여 네트워크 인터페이스의 MTU 를 확인합니다. ip가 네트워크 구성을 위한 최신 명령인 반면, ifconfig는 더 오래되었지만 여전히 일반적으로 사용되는 유틸리티입니다. 이는 네트워크 인터페이스에 대한 유사한 정보를 제공합니다.
먼저, ifconfig 명령을 포함하는 net-tools를 설치해 보겠습니다. htop에서 했던 것처럼 다시 apt를 사용합니다.
아직 열려 있지 않다면 터미널을 엽니다.
다음 명령을 입력하고 Enter 키를 눌러 net-tools를 설치합니다.
sudo apt update
sudo apt install net-tools -y
-y 플래그는 설치 중에 발생하는 모든 프롬프트에 자동으로 "yes"로 응답하여 프로세스를 더 원활하게 만듭니다.
설치가 완료되면 ifconfig 명령을 사용할 수 있습니다. 다음 명령을 입력하고 Enter 키를 누릅니다.
ifconfig
이 명령은 활성 네트워크 인터페이스에 대한 구성 정보를 표시합니다. 다음과 유사한 출력을 보게 됩니다.
eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 172.17.0.2 netmask 255.255.0.0 broadcast 172.17.255.255
inet6 fe80::42:acff:fe11:2 prefixlen 64 scopeid 0x20<link>
ether 02:42:ac:11:00:02 txqueuelen 1000 (Ethernet)
RX packets 123 bytes 12345 (12.0 KiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 123 bytes 12345 (12.0 KiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
lo: flags=73<UP,LOOPBACK,RUNNING> mtu 65536
inet 127.0.0.1 netmask 255.0.0.0
inet6 ::1 prefixlen 128 scopeid 0x10<host>
loop txqueuelen 1000 (Local Loopback)
RX packets 123 bytes 12345 (12.0 KiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 123 bytes 12345 (12.0 KiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
다시, eth0에 해당하는 섹션을 찾습니다. ip link show에서 본 값을 확인하는 mtu 값이 거기에 나열되어 있습니다.
ip와 ifconfig를 모두 사용하는 것은 다른 시스템이나 문서에서 하나를 다른 것보다 더 많이 사용할 수 있으므로 도움이 될 수 있습니다.
계속 진행하려면 계속을 클릭하십시오.
/sys/class/net 에서 MTU 검사
이 단계에서는 /sys 파일 시스템을 탐색하여 MTU 값을 찾습니다. /sys 파일 시스템은 커널 데이터 구조에 대한 인터페이스를 제공하는 가상 파일 시스템입니다. 이를 통해 커널 매개변수 및 장치 정보를 검사하고 때로는 수정할 수 있습니다.
MTU 를 포함한 네트워크 인터페이스 정보는 /sys/class/net 디렉토리를 통해 노출됩니다. 시스템의 각 네트워크 인터페이스에는 여기에 하위 디렉토리가 있습니다.
아직 열려 있지 않다면 터미널을 엽니다.
먼저, 사용 가능한 네트워크 인터페이스를 확인하기 위해 /sys/class/net 디렉토리의 내용을 나열해 보겠습니다. 다음 명령을 입력하고 Enter 키를 누릅니다.
ls /sys/class/net/
ip link show 또는 ifconfig의 출력과 유사한 네트워크 인터페이스 목록이 표시됩니다. 이 환경에서는 eth0 및 lo가 표시될 가능성이 높습니다.
eth0 lo
이제 기본 인터페이스인 eth0의 디렉토리를 살펴보겠습니다. 다음 명령을 입력하고 Enter 키를 누릅니다.
ls /sys/class/net/eth0/
그러면 eth0 인터페이스에 대한 정보를 포함하는 파일 및 디렉토리 목록이 표시됩니다.
addr_assign_type broadcast device ifindex mtu phys_port_id speed
address carrier dormant iflink napi_defer_hard_irqs phys_port_name statistics
addr_len carrier_changes duplex link_mode netdev_group power subsystem
bonding_slave carrier_up_count flags lower_ operstate proto_down_reason tx_queue_len
bridge_slave dev_id gro_flush_timeout name_assign_type perms qdisc type
mtu라는 파일에 주목하십시오. 이 파일의 내용을 읽어 MTU 값을 얻을 수 있습니다. cat 명령을 사용하여 mtu 파일의 내용을 표시합니다. 다음 명령을 입력하고 Enter 키를 누릅니다.
cat /sys/class/net/eth0/mtu
터미널에 MTU 값인 1500이 출력되어야 합니다.
1500
/sys 파일을 읽어 MTU 를 확인하는 이 방법은 네트워크 인터페이스에 대한 커널 수준 정보에 직접 접근하는 방법을 제공합니다.
이제 ip link show, ifconfig 및 /sys 파일 시스템 검사를 사용하여 MTU 를 성공적으로 확인했습니다. 이는 Linux 에서 동일한 작업을 수행하는 여러 가지 방법이 있음을 보여줍니다.
이 랩을 완료하려면 계속을 클릭하십시오.
요약
이 랩에서는 세 가지 다른 방법을 사용하여 Linux 에서 네트워크 인터페이스의 최대 전송 단위 (MTU, Maximum Transmission Unit) 를 확인하는 방법을 배웠습니다. 먼저 최신 ip link show 명령을 사용하여 MTU 값을 포함한 모든 네트워크 인터페이스에 대한 자세한 정보를 표시했습니다. 그런 다음, 오래되었지만 여전히 흔히 사용되는 ifconfig 명령을 사용하여 이 정보를 확인했습니다. 마지막으로, 네트워크 인터페이스 속성에 프로그래밍 방식으로 접근할 수 있는 /sys/class/net 파일 시스템에서 MTU 값을 직접 검사하는 방법을 살펴보았습니다. 이러한 방법은 네트워크 문제 해결 및 성능 최적화에 중요한 MTU 설정을 확인하는 다양한 방법을 제공합니다.



