Cấu hình IP và cổng mặc định trên Linux
Bài viết này trình bày cách thiết lập địa chỉ IP và định tuyến trên máy chủ Linux, bao gồm cả phương pháp cấu hình vĩnh viễn lẫn tạm thời. Nội dung bao gồm:
- Cách thiết lập IP cố định bằng file cấu hình — hiệu lực sau mỗi lần khởi động.
- Sử dụng lệnh để gán IP tạm thời — mất hiệu lực khi hệ thống khởi động lại.
- Hướng dẫn sử dụng các lệnh như
ifconfig,ip,route, vàethtoolđể quản lý mạng và kiểm tra trạng thái giao diện.
Môi trường thực hiện
SUSE Linux Enterprise Server 10/11
Cấu hình IP vĩnh viễn (hiệu lực lâu dài)
Phương pháp này thay đổi cấu hình trong file hệ thống, đảm bảo cài đặt được giữ nguyên sau khi khởi động lại dịch vụ mạng hoặc toàn bộ máy chủ.
- Xác định giao diện mạng cần cấu hình:
- Nếu đang sửa đổi IP hiện có, dùng lệnh
ifconfigđể xem giao diện nào đang hoạt động. - Với máy mới chỉ có một card mạng (ví dụ: máy ảo), thường là
eth0. - Với nhiều card mạng, dùng lệnh
ethtool ethXđể kiểm tra kết nối vật lý:
Nếu kết quả trả vềethtool eth1 | grep "Link detected"yes, cổng đó đang kết nối.
- Nếu đang sửa đổi IP hiện có, dùng lệnh
- Chỉnh sửa file cấu hình giao diện:
Vào thư mục/etc/sysconfig/network/, mở file tương ứng (ví dụ:ifcfg-eth0) và điền nội dung sau:BOOTPROTO='static' IPADDR='192.168.0.1' NETMASK='255.255.255.0' STARTMODE='auto' - Thiết lập cổng mặc định (gateway):
Tạo hoặc sửa file/etc/sysconfig/network/routes, thêm dòng:
Trong đódefault 192.168.1.1 - -192.168.1.1là địa chỉ gateway. - Tái khởi động dịch vụ mạng:
service network restart - Kiểm tra cấu hình sau khi khởi động lại:
Đảm bảo địa chỉ IP đã được gán đúng choifconfig -aeth0. - Kiểm thử kết nối:
Dùng lệnhpingtừ thiết bị khác hoặc đăng nhập vào hệ thống qua IP vừa cấu hình để xác nhận.
Cấu hình IP tạm thời (chỉ hiệu lực đến khi khởi động lại)
Phương pháp này phù hợp để gán IP nhanh, đặc biệt cho các địa chỉ IP ảo (floating IP) trong môi trường HA, nhưng không nên dùng cho cấu hình cố định.
- Gán IP cho giao diện eth0:
ifconfig eth0 192.168.0.1 netmask 255.255.255.0 up - Thêm cổng mặc định:
route add default gw 192.168.1.1 - Kiểm tra kết nối như trên.
Mở rộng kiến thức: Các lệnh quản trị mạng phổ biến
Lệnh ifconfig
Dùng để xem và cấu hình giao diện mạng (yêu cầu quyền root hoặc dùng đường dẫn đầy đủ /sbin/ifconfig).
- Xem tất cả giao diện (kể cả chưa kích hoạt):
ifconfig -a - Kích hoạt hoặc vô hiệu hóa giao diện:
ifconfig eth0 up ifconfig eth0 down - Gán IP cơ bản:
Hoặc kèm theo subnet mask và broadcast:ifconfig eth0 192.168.0.1ifconfig eth0 192.168.0.1 netmask 255.255.255.0 broadcast 192.168.0.255 - Gán nhiều IP trên cùng một giao diện (alias):
Bạn có thể tạo thêmifconfig eth0:0 192.168.0.2 netmask 255.255.255.0 upeth0:1,eth0:2, v.v.
Lệnh ethtool
Dùng để kiểm tra và điều chỉnh thông số phần cứng của card mạng.
- Xem thông tin chi tiết giao diện
eth0:
Kết quả hiển thị tốc độ, chế độ duplex, trạng thái tự động dò tìm (autonegotiation), và trạng thái link.ethtool eth0 - Xem thống kê truyền/nhận gói tin:
ethtool -S eth0 - Thiết lập tốc độ, chế độ duplex, bật/tắt autoneg:
Lưu ý: Tắt autoneg khi đặt tốc độ cố định.ethtool -s eth0 speed 1000 duplex full autoneg off
Lệnh route
Quản lý bảng định tuyến IP.
- In bảng định tuyến (dạng IP thay vì tên máy):
Ví dụ đầu ra:route -nKernel IP routing table Destination Gateway Genmask Flags Metric Ref Use Iface 10.135.0.0 0.0.0.0 255.255.192.0 U 0 0 0 eth0 169.254.0.0 0.0.0.0 255.255.0.0 U 1002 0 0 eth1 173.18.0.0 0.0.0.0 255.255.0.0 U 0 0 0 eth2 0.0.0.0 192.168.1.1 0.0.0.0 UG 0 0 0 eth0
Giải thích cột:
- Destination: Mạng đích hoặc host đích.
- Gateway: Địa chỉ cổng nếu cần định tuyến ra ngoài. Dấu
0.0.0.0nghĩa là không dùng cổng (trực tiếp). - Genmask: Subnet mask. Giá trị
0.0.0.0ở cột này + đích0.0.0.0là route mặc định. - Flags:
- U: Route đang hoạt động.
- G: Sử dụng cổng (gateway).
- H: Đích là một host (không phải mạng).
- Iface: Giao diện mạng sử dụng để gửi gói tin.
Thứ tự xử lý route:
Hệ thống so sánh từ mạng con nhỏ nhất (subnet lớn hơn / mask cụ thể hơn) đến mạng lớn dần, cuối cùng mới dùng route mặc định.
- Thêm route đến một host cụ thể:
route add -host 192.16.128.1 dev eth1 route add -host 192.168.128.1 gw 192.168.128.254 - Thêm route đến một mạng:
route add -net 192.168.128.0 netmask 255.255.0.0 dev eth1 route add -net 192.168.128.0/16 gw 192.168.128.254 - Thêm cổng mặc định:
route add default gw 192.168.1.1 - Xóa route:
route del -net 192.168.0.0 netmask 255.255.0.0 dev eth0 route del -host 192.168.128.1