Giới thiệu
Trong lab này, chúng ta sẽ khám phá lệnh Linux ethtool và các ứng dụng thực tế của nó. Lệnh ethtool là một công cụ mạnh mẽ để truy xuất và sửa đổi các cài đặt giao diện mạng, cho phép người dùng chẩn đoán và khắc phục sự cố mạng. Chúng ta sẽ bắt đầu bằng cách tìm hiểu các tùy chọn khác nhau do lệnh ethtool cung cấp, sau đó tiến hành truy xuất thông tin chi tiết về các giao diện mạng trên hệ thống của chúng ta. Cuối cùng, chúng ta sẽ trình diễn cách sửa đổi cài đặt của một giao diện mạng bằng lệnh ethtool.
Lab này bao gồm các bước sau:
- Tìm hiểu Lệnh ethtool
- Truy xuất Thông tin Giao diện Mạng
- Sửa đổi Cài đặt Giao diện Mạng
Lệnh ethtool là một công cụ được sử dụng rộng rãi trong hệ sinh thái Linux và thường được cài đặt sẵn trên hầu hết các bản phân phối Linux. Tuy nhiên, nếu nó không có sẵn trên hệ thống của bạn, bạn có thể cần cài đặt gói cần thiết bằng trình quản lý gói của bản phân phối của bạn.
Tìm hiểu Lệnh ethtool
Trong bước này, chúng ta sẽ khám phá lệnh ethtool, một công cụ mạnh mẽ trong Linux để truy xuất và sửa đổi cài đặt giao diện mạng. Lệnh ethtool cung cấp một loạt các tùy chọn để chẩn đoán và khắc phục sự cố mạng.
Đầu tiên, hãy kiểm tra phiên bản ethtool được cài đặt trên hệ thống của chúng ta:
ethtool --version
Ví dụ về đầu ra:
ethtool version 5.15
Lệnh ethtool cung cấp nhiều tùy chọn để tương tác với các giao diện mạng. Một số tùy chọn thường được sử dụng bao gồm:
--show-features
: Hiển thị các tính năng được hỗ trợ của giao diện mạng.--show-link
: Hiển thị trạng thái liên kết hiện tại của giao diện mạng.--show-eee
: Hiển thị trạng thái Energy-Efficient Ethernet (EEE).--show-pause
: Hiển thị các tham số tạm dừng của giao diện mạng.--show-ringparam
: Hiển thị các tham số bộ đệm vòng của giao diện mạng.--show-priv-flags
: Hiển thị các cờ riêng của giao diện mạng.--show-offload
: Hiển thị các tham số offload của giao diện mạng.
Để có được danh sách đầy đủ các tùy chọn có sẵn, bạn có thể sử dụng flag --help
:
ethtool --help
Trong các bước tiếp theo, chúng ta sẽ khám phá một số ví dụ thực tế về việc sử dụng lệnh ethtool để truy xuất và sửa đổi cài đặt giao diện mạng.
Truy xuất Thông tin Giao diện Mạng
Trong bước này, chúng ta sẽ sử dụng lệnh ethtool để truy xuất thông tin về các giao diện mạng trên hệ thống của chúng ta.
Đầu tiên, hãy liệt kê tất cả các giao diện mạng có sẵn:
ip link show
Ví dụ về đầu ra:
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
Bây giờ, hãy sử dụng lệnh ethtool để truy xuất thông tin chi tiết về giao diện eth0
:
ethtool eth0
Ví dụ về đầu ra:
Settings for eth0:
Supported ports: [ TP ]
Supported link modes: 10baseT/Half 10baseT/Full
100baseT/Half 100baseT/Full
1000baseT/Full
Supported pause frame use: No
Supports auto-negotiation: Yes
Advertised link modes: 10baseT/Half 10baseT/Full
100baseT/Half 100baseT/Full
1000baseT/Full
Advertised pause frame use: No
Advertised auto-negotiation: Yes
Speed: 1000Mb/s
Duplex: Full
Port: Twisted Pair
PHYAD: 0
Transceiver: internal
Auto-negotiation: on
MDI-X: off (auto)
Supports Wake-on: pumbg
Wake-on: d
Current message level: 0x00000007 (7)
Link detected: yes
Đầu ra này cung cấp thông tin chi tiết về giao diện eth0
, bao gồm các chế độ liên kết được hỗ trợ, tốc độ, duplex và các tham số khác.
Bạn cũng có thể sử dụng lệnh ethtool để truy xuất thông tin cụ thể về giao diện, chẳng hạn như trạng thái liên kết, thông tin driver và hơn thế nữa. Ví dụ:
ethtool --show-link eth0
ethtool --driver eth0
Trong bước tiếp theo, chúng ta sẽ tìm hiểu cách sửa đổi cài đặt giao diện mạng bằng lệnh ethtool.
Sửa đổi Cài đặt Giao diện Mạng
Trong bước này, chúng ta sẽ tìm hiểu cách sử dụng lệnh ethtool để sửa đổi cài đặt của một giao diện mạng.
Đầu tiên, hãy kiểm tra cài đặt hiện tại của giao diện eth0
:
ethtool eth0
Ví dụ về đầu ra:
Settings for eth0:
Supported ports: [ TP ]
Supported link modes: 10baseT/Half 10baseT/Full
100baseT/Half 100baseT/Full
1000baseT/Full
Supported pause frame use: No
Supports auto-negotiation: Yes
Advertised link modes: 10baseT/Half 10baseT/Full
100baseT/Half 100baseT/Full
1000baseT/Full
Advertised pause frame use: No
Advertised auto-negotiation: Yes
Speed: 1000Mb/s
Duplex: Full
Port: Twisted Pair
PHYAD: 0
Transceiver: internal
Auto-negotiation: on
MDI-X: off (auto)
Supports Wake-on: pumbg
Wake-on: d
Current message level: 0x00000007 (7)
Link detected: yes
Bây giờ, hãy thử thay đổi tốc độ và cài đặt duplex của giao diện eth0
:
sudo ethtool -s eth0 speed 100 duplex full
Ví dụ về đầu ra:
Settings for eth0:
Speed: 100Mb/s
Duplex: Full
Bạn có thể thấy rằng tốc độ đã được thay đổi thành 100Mb/s và chế độ duplex đã được đặt thành Full.
Ngoài ra, bạn có thể sử dụng lệnh ethtool để bật hoặc tắt các tính năng của giao diện mạng, chẳng hạn như:
## Enable wake-on-lan
sudo ethtool -s eth0 wol g
## Disable auto-negotiation
sudo ethtool -s eth0 autoneg off
Hãy nhớ rằng việc sửa đổi cài đặt giao diện mạng có thể ảnh hưởng đến khả năng kết nối của hệ thống của bạn, vì vậy điều quan trọng là phải hiểu các tác động của những thay đổi bạn thực hiện.
Tóm tắt
Trong lab này, trước tiên chúng ta đã khám phá lệnh ethtool, một công cụ mạnh mẽ trong Linux để truy xuất và sửa đổi cài đặt giao diện mạng. Chúng ta đã tìm hiểu về các tùy chọn khác nhau có sẵn trong ethtool, chẳng hạn như hiển thị các tính năng được hỗ trợ, trạng thái liên kết, trạng thái Energy-Efficient Ethernet, tham số tạm dừng, tham số bộ đệm vòng, cờ riêng tư và tham số offload. Chúng ta cũng đã khám phá cách nhận danh sách đầy đủ các tùy chọn có sẵn bằng cách sử dụng flag --help.
Tiếp theo, chúng ta đã sử dụng lệnh ethtool để truy xuất thông tin chi tiết về các giao diện mạng trên hệ thống của chúng ta. Chúng ta bắt đầu bằng cách liệt kê tất cả các giao diện mạng có sẵn bằng lệnh ip link show, sau đó sử dụng ethtool để thu thập thêm thông tin chi tiết về giao diện eth0.