Linux ip command

Lệnh ip trong Linux: Hướng dẫn chi tiết từ A đến Z

Chào mừng bạn đến với thế giới quản lý mạng Linux! Nếu bạn là một quản trị viên hệ thống, kỹ sư mạng, hoặc đơn giản là một người tò mò muốn tìm hiểu sâu hơn về cách Linux hoạt động, thì lệnh ip là một công cụ không thể thiếu trong hộp công cụ của bạn. Bài viết này sẽ cung cấp cho bạn một hướng dẫn chi tiết, dễ hiểu về lệnh ip, giúp bạn nắm vững cách sử dụng và áp dụng nó vào các tình huống thực tế.

Lệnh ip là một tiện ích dòng lệnh mạnh mẽ được sử dụng để quản lý cấu hình mạng trong hệ thống Linux. Nó thay thế các công cụ cũ hơn như ifconfig và route, cung cấp một giao diện thống nhất và linh hoạt hơn để cấu hình các interface mạng, định tuyến, và nhiều hơn nữa. Với lệnh ip, bạn có thể dễ dàng xem, thêm, xóa và sửa đổi các cấu hình mạng một cách hiệu quả.

Tại sao nên sử dụng lệnh ip?

Trước khi đi sâu vào chi tiết, hãy cùng tìm hiểu tại sao lệnh ip lại trở nên phổ biến và được ưa chuộng hơn so với các công cụ truyền thống:

  • Tính năng toàn diện: Lệnh ip cung cấp một loạt các tính năng mạnh mẽ, bao gồm quản lý địa chỉ IP, cấu hình interface, định tuyến, ARP, và nhiều hơn nữa.
  • Cú pháp nhất quán: Cú pháp của lệnh ip được thiết kế rõ ràng và nhất quán, giúp bạn dễ dàng học và sử dụng.
  • Khả năng mở rộng: Lệnh ip có thể được mở rộng với các tùy chọn và đối tượng khác nhau, cho phép bạn tùy chỉnh và điều khiển mạng một cách chi tiết.
  • Tích hợp tốt: Lệnh ip được tích hợp chặt chẽ với kernel Linux, đảm bảo hiệu suất và độ ổn định cao.

Cú pháp cơ bản của lệnh ip

Cú pháp chung của lệnh ip như sau:

ip [OPTIONS] OBJECT {COMMAND | help}

Trong đó:

  • OPTIONS: Các tùy chọn để điều chỉnh hành vi của lệnh.
  • OBJECT: Đối tượng mà bạn muốn thao tác (ví dụ: link, addr, route).
  • COMMAND: Lệnh bạn muốn thực hiện trên đối tượng (ví dụ: show, add, delete).
  • help: Hiển thị trợ giúp về đối tượng hoặc lệnh.

Các đối tượng phổ biến trong lệnh ip

Dưới đây là một số đối tượng thường được sử dụng nhất trong lệnh ip:

  • link: Quản lý các interface mạng (ví dụ: ethernet, wifi).
  • addr: Quản lý địa chỉ IP được gán cho các interface.
  • route: Quản lý bảng định tuyến.
  • neigh: Quản lý các mục ARP (Address Resolution Protocol).

Hướng dẫn sử dụng lệnh ip chi tiết

Bây giờ, hãy đi sâu vào cách sử dụng lệnh ip với từng đối tượng cụ thể.

1. Quản lý Interface mạng với ip link

Đối tượng link cho phép bạn xem và cấu hình các interface mạng. Bạn có thể sử dụng nó để bật/tắt interface, thay đổi MTU, và nhiều hơn nữa.

Xem thông tin về các interface mạng

Để xem thông tin về tất cả các interface mạng, sử dụng lệnh:

ip link show

Bạn cũng có thể xem thông tin về một interface cụ thể bằng cách chỉ định tên của nó:

ip link show eth0

Lệnh này sẽ hiển thị thông tin chi tiết về interface eth0, bao gồm tên, MAC address, trạng thái (UP/DOWN), MTU, và các thông số khác.

Bật/Tắt interface mạng

Để bật một interface mạng, sử dụng lệnh:

sudo ip link set eth0 up

Để tắt một interface mạng, sử dụng lệnh:

sudo ip link set eth0 down

Thay đổi MTU (Maximum Transmission Unit)

MTU là kích thước gói tin lớn nhất mà một interface có thể truyền. Để thay đổi MTU của một interface, sử dụng lệnh:

sudo ip link set eth0 mtu 1400

Trong ví dụ này, MTU của interface eth0 được đặt thành 1400 bytes.

2. Quản lý địa chỉ IP với ip addr

Đối tượng addr cho phép bạn xem, thêm và xóa địa chỉ IP được gán cho các interface mạng.

Xem địa chỉ IP của các interface mạng

Để xem địa chỉ IP của tất cả các interface mạng, sử dụng lệnh:

ip addr show

Bạn cũng có thể xem địa chỉ IP của một interface cụ thể:

ip addr show eth0

Lệnh này sẽ hiển thị thông tin về các địa chỉ IP (IPv4 và IPv6) được gán cho interface eth0, cũng như các thông tin khác như subnet mask và phạm vi.

Thêm địa chỉ IP cho interface mạng

Để thêm một địa chỉ IP cho một interface mạng, sử dụng lệnh:

sudo ip addr add 192.168.1.100/24 dev eth0

Trong ví dụ này, địa chỉ IP 192.168.1.100 với subnet mask /24 được gán cho interface eth0. Bạn cần sử dụng sudo vì đây là một thao tác yêu cầu quyền quản trị.

Xóa địa chỉ IP khỏi interface mạng

Để xóa một địa chỉ IP khỏi một interface mạng, sử dụng lệnh:

sudo ip addr del 192.168.1.100/24 dev eth0

Lệnh này sẽ xóa địa chỉ IP 192.168.1.100/24 khỏi interface eth0.

3. Quản lý định tuyến với ip route

Đối tượng route cho phép bạn xem và quản lý bảng định tuyến, xác định cách các gói tin được chuyển tiếp trong mạng.

Xem bảng định tuyến

Để xem bảng định tuyến hiện tại, sử dụng lệnh:

ip route show

Lệnh này sẽ hiển thị tất cả các tuyến đường mà hệ thống biết, bao gồm địa chỉ đích, gateway, và interface được sử dụng để chuyển tiếp gói tin.

Thêm một tuyến đường

Để thêm một tuyến đường mới, sử dụng lệnh:

sudo ip route add 10.0.0.0/24 via 192.168.1.1 dev eth0

Trong ví dụ này, một tuyến đường đến mạng 10.0.0.0/24 được thêm vào, với gateway là 192.168.1.1 và interface là eth0.

Xóa một tuyến đường

Để xóa một tuyến đường, sử dụng lệnh:

sudo ip route del 10.0.0.0/24 via 192.168.1.1 dev eth0

Lệnh này sẽ xóa tuyến đường đến mạng 10.0.0.0/24 thông qua gateway 192.168.1.1 trên interface eth0.

4. Quản lý ARP với ip neigh

Đối tượng neigh cho phép bạn xem và quản lý các mục ARP, ánh xạ địa chỉ IP sang địa chỉ MAC.

Xem bảng ARP

Để xem bảng ARP hiện tại, sử dụng lệnh:

ip neigh show

Lệnh này sẽ hiển thị tất cả các mục ARP mà hệ thống biết, bao gồm địa chỉ IP, địa chỉ MAC, và interface liên quan.

Thêm một mục ARP

Để thêm một mục ARP tĩnh, sử dụng lệnh:

sudo ip neigh add 192.168.1.200 lladdr 00:11:22:33:44:55 dev eth0

Trong ví dụ này, một mục ARP được thêm vào, ánh xạ địa chỉ IP 192.168.1.200 sang địa chỉ MAC 00:11:22:33:44:55 trên interface eth0.

Xóa một mục ARP

Để xóa một mục ARP, sử dụng lệnh:

sudo ip neigh del 192.168.1.200 dev eth0

Lệnh này sẽ xóa mục ARP cho địa chỉ IP 192.168.1.200 trên interface eth0.

Ví dụ thực tế sử dụng lệnh ip

Để hiểu rõ hơn về cách sử dụng lệnh ip, hãy xem xét một số ví dụ thực tế:

  • Cấu hình một server web: Bạn có thể sử dụng lệnh ip để gán một địa chỉ IP tĩnh cho server web của bạn, thiết lập định tuyến, và cấu hình các interface mạng.
  • Khắc phục sự cố mạng: Khi gặp sự cố mạng, bạn có thể sử dụng lệnh ip để kiểm tra trạng thái của các interface, xem bảng định tuyến, và kiểm tra kết nối đến các thiết bị khác.
  • Tạo một mạng ảo (Virtual Network): Bạn có thể sử dụng lệnh ip để tạo các interface ảo (ví dụ: bridge, VLAN) và cấu hình chúng để tạo ra một mạng ảo.

So sánh lệnh ip với ifconfig và route

Như đã đề cập, lệnh ip là sự thay thế hiện đại cho các công cụ cũ hơn như ifconfig và route. Dưới đây là bảng so sánh chi tiết:

Tính năng ip ifconfig route
Quản lý Interface Không
Quản lý địa chỉ IP Không
Quản lý định tuyến Không
Quản lý ARP Không Không
Cú pháp Nhất quán, dễ học Không nhất quán Khó nhớ
Tính năng Nhiều hơn Ít hơn Chỉ định tuyến

Như bạn có thể thấy, lệnh ip cung cấp một bộ tính năng toàn diện hơn và cú pháp nhất quán hơn so với ifconfig và route. Vì vậy, nó là lựa chọn tốt hơn cho việc quản lý mạng trong Linux.

FAQ (Câu hỏi thường gặp)

Làm thế nào để lệnh ip có hiệu lực sau khi khởi động lại hệ thống?

Bạn cần lưu cấu hình mạng vào một file cấu hình phù hợp với hệ thống của bạn. Ví dụ, trên Debian/Ubuntu, bạn có thể chỉnh sửa file /etc/network/interfaces. Trên CentOS/RHEL, bạn có thể chỉnh sửa các file trong thư mục /etc/sysconfig/network-scripts/.

Lệnh ip có yêu cầu quyền root không?

Có, hầu hết các lệnh ip để cấu hình mạng yêu cầu quyền root. Bạn cần sử dụng sudo trước các lệnh đó.

Làm thế nào để biết tên của interface mạng?

Bạn có thể sử dụng lệnh ip link show để xem danh sách tất cả các interface mạng và tên của chúng.

Kết luận

Lệnh ip là một công cụ mạnh mẽ và linh hoạt để quản lý mạng trong Linux. Với hướng dẫn chi tiết này, bạn đã nắm vững cú pháp cơ bản, các đối tượng phổ biến, và các ví dụ thực tế. Hãy thực hành và khám phá thêm các tính năng của lệnh ip để trở thành một chuyên gia quản lý mạng Linux!

Hy vọng bài viết này hữu ích cho bạn. Chúc bạn thành công!

Last Updated : 22/08/2025