Hướng dẫn này giải thích cách thiết lập địa chỉ IP tĩnh trên hệ thống Ubuntu từ dòng lệnh. Hướng dẫn này bao gồm cấu hình mạng cho tất cả các phiên bản Ubuntu hiện tại và bao gồm hướng dẫn cấu hình địa chỉ IP tĩnh, thiết lập tên máy chủ và cấu hình phân giải tên.
Mở tệp cấu hình mạng bằng trình chỉnh sửa. Tên tệp cấu hình netplan khác nhau tùy thuộc vào phiên bản Ubuntu.
Ubuntu 22.04 và Ubuntu 20.04:
Ubuntu 18.04:
Cú pháp cấu hình được viết bằng ngôn ngữ lập trình Python (định dạng .yaml), vì vậy việc thụt lề giữa các dòng rất quan trọng!
Nội dung của tệp giống nhau trên Ubuntu 22.04 - 18.04.
Sau đây là ví dụ về địa chỉ IPv4 tĩnh 192.168.1.100 trên giao diện mạng đầu tiên ens33 và IP cổng 192.168.1.1. Máy chủ sẽ sử dụng máy chủ DNS miễn phí của Google 8.8.8.8 và 8.8.4.4 để phân giải tên.
Hoặc, như Ảnh chụp màn hình từ máy chủ Ubuntu:
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22347%22%3E%3C/svg%3E
Có thể thêm địa chỉ IPv6 vào dòng addresses, phân cách bằng dấu phẩy. Ví dụ:
Bạn phải đặt địa chỉ IPv6 trong dấu ngoặc đơn. Nếu không, bạn sẽ nhận được lỗi cú pháp.
Để áp dụng các thay đổi, hãy chạy lệnh sau:
Hoặc sử dụng lệnh này với lệnh --debug để có được một số kết quả đầu ra hữu ích nếu việc phân tích cú pháp tệp cấu hình netplan thành công.
Để áp dụng các thay đổi, hãy chạy:
Bạn có thể sao chép và dán trực tiếp từ dòng này.
Nhập mật khẩu gốc của bạn, sau khi trình soạn thảo ưa thích của bạn mở tệp, bạn có thể thấy mật khẩu này trên các phiên bản Ubuntu cũ hơn:
Hệ thống Ubuntu với systemd (như Ubuntu 16.04 và các phiên bản mới hơn), giao diện mạng được đặt tên là ens33 thay vì eth0 và từ 'dynamic' đã được thay thế bằng 'dhcp'.
Cấu hình trong đó địa chỉ IP được DHCP tự động gán sẽ trông như thế này:
Các card mạng được cấu hình tĩnh sẽ có một phần như thế này trên Ubuntu cũ hơn phiên bản:
Đây là một ví dụ cho bản phát hành Ubuntu cũ hơn:
Và đây là một ví dụ cho Ubuntu 16.04 và mới hơn:
Và đây là tệp cấu hình mạng hoàn chỉnh từ hệ thống Ubuntu 16.04.
Nếu bạn sử dụng trình soạn thảo "nano" để chỉnh sửa tệp cấu hình, hãy nhập Ctrl+x để lưu các thay đổi.
Lưu bộ đệm đã sửa đổi (TRẢ LỜI "Không" SẼ PHÁ HỦY CÁC THAY ĐỔI) ?
<---Nhập "y"
Tên tệp cần ghi: interfaces
<---ENTER
a) Ubuntu 20.04
Mở tệp cấu hình netplan bằng Trình chỉnh sửa. Tôi sẽ sử dụng trình chỉnh sửa nano trong ví dụ này:
Tôi đã đánh dấu đậm các địa chỉ IP của máy chủ DNS:
b) Ubuntu 18.04
Mở tệp cấu hình netplan bằng nano biên tập viên:
Tôi đã đánh dấu in đậm các địa chỉ IP của máy chủ DNS:
c) Ubuntu phiên bản 14.04 và 16.04
Mở lại tệp /etc/network/interfaces và thêm một dòng dns-nameservers 8.8.8.8 ngay sau dòng gateway.
Máy chủ tên 8.8.8.8 và 8.8.4.4 do Google cung cấp để sử dụng công khai, do đó bạn có thể sử dụng chúng trong cấu hình mạng của mình.
Nếu bạn sử dụng Trình soạn thảo "nano", nhập Ctrl+x để lưu thay đổi.
Lưu vùng đệm đã sửa đổi (TRẢ LỜI "Không" SẼ PHÁ HỦY CÁC THAY ĐỔI) ?
<---Nhập "y"
Tên tệp cần ghi: interfaces
<---ENTER
d) Phiên bản Ubuntu < 14.04
Trong bước này, bạn sẽ cấu hình thủ công tệp cấu hình DNS của mình.
Sau khi trình soạn thảo mở tệp, bạn muốn nhập thông tin sau...
Nếu bạn sử dụng trình soạn thảo "nano", hãy nhập Ctrl+x để lưu các thay đổi.
Lưu bộ đệm đã sửa đổi (TRẢ LỜI "Không" SẼ PHÁ HỦY CÁC THAY ĐỔI) ?
<---Nhập "y"
Tên tệp cần ghi: resolv.conf
<---ENTER
Sau đây là một ví dụ:
Đối với Ubuntu 20.04 và 18.04, hãy sử dụng lệnh netplan để áp dụng các thay đổi và khởi động lại mạng. Lệnh là:
Đối với Ubuntu phiên bản 14.04 và 16.04, chúng tôi sử dụng systemctl thay thế:
Tại thời điểm này, bạn có thể kiểm tra xem các thiết lập có đúng:
Nếu mọi thứ đều đúng, bạn sẽ nhận được kết quả này.
Đối với Ubuntu < 14.04 sử dụng tập lệnh khởi tạo mạng:
Điều này sẽ trả về kết quả trông giống như sau:
Trong ví dụ này, tôi sẽ đổi tên máy chủ của hệ thống thành obelix.example.com.
Trước tiên, hãy chỉnh sửa tệp /etc/hostname
Tệp hostname chỉ chứa phần cục bộ của tên máy chủ. Phần cục bộ ở đây là "obelix". Thay đổi nội dung của tệp /etc/hostname thành:
và lưu tệp. Tệp tên máy chủ trông như thế nào trong nano sau khi chỉnh sửa:
Sau đó mở tệp /etc/hosts bằng trình chỉnh sửa:
và thay đổi dòng bắt đầu bằng địa chỉ IP của hệ thống như này:
Đây là ảnh chụp màn hình của tệp /etc/hosts.
Định dạng như sau:
[Địa chỉ IP] [tên máy chủ đầy đủ bao gồm tên miền] [phần cục bộ của tên máy chủ]
Cuối cùng, khởi động lại hệ thống để áp dụng thay đổi tên máy chủ.
Cấu hình mạng trên Ubuntu 22.04, Ubuntu 20.04 và Ubuntu 18.04
Cấu hình mạng trong Ubuntu được thực hiện bằng một công cụ có tên là netplan. Công cụ này thay thế tệp /etc/network/interfaces truyền thống.Cấu hình Địa chỉ IP Tĩnh bằng Netplan trên Ubuntu
Sau đây là các bước để cấu hình địa chỉ IP tĩnh bằng Netplan. Các tệp cấu hình Netplan nằm trong thư mục /etc/netplan/. Tệp cấu hình mặc định là /etc/netplan/01-netcfg.yaml.Mở tệp cấu hình mạng bằng trình chỉnh sửa. Tên tệp cấu hình netplan khác nhau tùy thuộc vào phiên bản Ubuntu.
Ubuntu 22.04 và Ubuntu 20.04:
Mã:
sudo nano /etc/netplan/00-installer-config.yaml
Mã:
sudo nano /etc/netplan/01-netcfg.yaml
Nội dung của tệp giống nhau trên Ubuntu 22.04 - 18.04.
Sau đây là ví dụ về địa chỉ IPv4 tĩnh 192.168.1.100 trên giao diện mạng đầu tiên ens33 và IP cổng 192.168.1.1. Máy chủ sẽ sử dụng máy chủ DNS miễn phí của Google 8.8.8.8 và 8.8.4.4 để phân giải tên.
Mã:
# This file describes the network interfaces available on your system
# For more information, see netplan(5).
network:
version: 2
renderer: networkd
ethernets:
ens33:
dhcp4: no
dhcp6: no
addresses: [192.168.1.100/24]
gateway4: 192.168.1.1
nameservers:
addresses: [8.8.8.8,8.8.4.4]
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22347%22%3E%3C/svg%3E
Có thể thêm địa chỉ IPv6 vào dòng addresses, phân cách bằng dấu phẩy. Ví dụ:
Mã:
# This file describes the network interfaces available on your system
# For more information, see netplan(5).
network:
version: 2
renderer: networkd
ethernets:
ens33:
dhcp4: no
dhcp6: no
addresses: [192.168.1.100/24, '2001:1::1/64']
gateway4: 192.168.1.1
nameservers:
addresses: [8.8.8.8,8.8.4.4]
Để áp dụng các thay đổi, hãy chạy lệnh sau:
Mã:
sudo netplan apply
Mã:
sudo netplan --debug apply
Cấu hình địa chỉ DHCP bằng Netplan
Đây là cấu hình để lấy cấu hình mạng cho IPv4 và IPv6 từ máy chủ DHCP.
Mã:
# This file describes the network interfaces available on your system
# For more information, see netplan(5).
network:
version: 2
renderer: networkd
ethernets:
ens33:
dhcp4: yes
dhcp6: yes
Mã:
sudo netplan apply
Nhiều tùy chọn cấu hình Netplan hơn
Netplan là một hệ thống cấu hình mới phức tạp cấu hình mạng card, thiết bị ảo, VLAN và cầu nối trong Ubuntu 18.04. Xem trang hướng dẫn để biết thêm ví dụ và giải thích sâu hơn về cú pháp.Cấu hình mạng trênUbuntu 12.04 - 17.04 (bao gồm Ubuntu 16.04 LTS)
Bước 1: Cấu hình giao diện mạng
Trong bước này, bạn sẽ cấu hình thủ công giao diện mạng của mình bằng cách chỉnh sửa các tệp sau bằng trình soạn thảo văn bản ưa thích của bạn (nano gedit vi). Đối với ví dụ này, tôi đang sử dụng trình soạn thảo "nano". Bạn có thể chỉnh sửa tệp thích hợp bằng cách nhập lệnh sau vào thiết bị đầu cuối:Bạn có thể sao chép và dán trực tiếp từ dòng này.
Mã:
sudo nano /etc/network/interfaces
Mã:
auto lo eth0
iface lo inet loopback
iface eth0 inet dynamic
Cấu hình trong đó địa chỉ IP được DHCP tự động gán sẽ trông như thế này:
Mã:
# This file describes the network interfaces available on your system
# and how to activate them. For more information, see interfaces(5).
source /etc/network/interfaces.d/*
# The loopback network interface
auto lo
iface lo inet loopback
# The primary network interface
auto ens33
iface ens33 inet dhcp
Mã:
auto lo eth0
iface lo inet loopback
iface eth0 inet static address xxx.xxx.xxx.xxx(enter your ip here) netmask xxx.xxx.xxx.xxx gateway xxx.xxx.xxx.xxx(enter gateway ip here,usually the address of the router)
Mã:
auto lo eth0
iface lo inet loopback
iface eth0 inet static address 192.168.1.100 netmask 255.255.255.0 gateway 192.168.1.1
Mã:
# This file describes the network interfaces available on your system
# and how to activate them. For more information, see interfaces(5).
source /etc/network/interfaces.d/*
# The loopback network interface
auto lo
iface lo inet loopback
# test
# The primary network interface
auto ens33
iface ens33 inet static
address 192.168.1.100
netmask 255.255.255.0
network 192.168.1.0
broadcast 192.168.1.255
gateway 192.168.1.1
dns-nameservers 8.8.8.8 8.8.4.4

Nếu bạn sử dụng trình soạn thảo "nano" để chỉnh sửa tệp cấu hình, hãy nhập Ctrl+x để lưu các thay đổi.
Lưu bộ đệm đã sửa đổi (TRẢ LỜI "Không" SẼ PHÁ HỦY CÁC THAY ĐỔI) ?
<---Nhập "y"
Tên tệp cần ghi: interfaces
<---ENTER
Bước 2: Cấu hình máy chủ DNS
Những thay đổi trong /etc/resolv.conf chỉ được yêu cầu trên các Hệ thống có Ubuntu < 14.04, đối với các phiên bản Ubuntu mới hơn, máy chủ tên được cấu hình trong tệp /etc/network/interfaces hoặc tệp cấu hình netplan.a) Ubuntu 20.04
Mở tệp cấu hình netplan bằng Trình chỉnh sửa. Tôi sẽ sử dụng trình chỉnh sửa nano trong ví dụ này:
Mã:
sudo nano /etc/netplan/00-installer-config.yaml
Mã:
# This file describes the network interfaces available on your system
# For more information, see netplan(5).
network:
version: 2
renderer: networkd
ethernets:
ens33:
dhcp4: no
dhcp6: no
addresses: [192.168.1.100/24]
gateway4: 192.168.1.1
nameservers:
addresses: [[B]8.8.8.8,8.8.4.4[/b]]
Mở tệp cấu hình netplan bằng nano biên tập viên:
Mã:
sudo nano /etc/netplan/01-netcfg.yaml
Mã:
# This file describes the network interfaces available on your system
# For more information, see netplan(5).
network:
version: 2
renderer: networkd
ethernets:
ens33:
dhcp4: no
dhcp6: no
addresses: [192.168.1.100/24]
gateway4: 192.168.1.1
nameservers:
addresses: [[B]8.8.8.8,8.8.4.4[/b]]
Mở lại tệp /etc/network/interfaces và thêm một dòng dns-nameservers 8.8.8.8 ngay sau dòng gateway.
Mã:
sudo nano /etc/network/interfaces
Mã:
auto lo
iface lo inet loopback
iface ens33 inet static address xxx.xxx.xxx.xxx(enter your ip here) netmask xxx.xxx.xxx.xxx gateway xxx.xxx.xxx.xxx(enter gateway ip here,usually the address of the router) dns-nameservers 8.8.8.8
Nếu bạn sử dụng Trình soạn thảo "nano", nhập Ctrl+x để lưu thay đổi.
Lưu vùng đệm đã sửa đổi (TRẢ LỜI "Không" SẼ PHÁ HỦY CÁC THAY ĐỔI) ?
<---Nhập "y"
Tên tệp cần ghi: interfaces
<---ENTER
d) Phiên bản Ubuntu < 14.04
Trong bước này, bạn sẽ cấu hình thủ công tệp cấu hình DNS của mình.
Mã:
sudo nano /etc/resolv.conf
Mã:
nameserver xxx.xxx.xxx.xxx(enter your dns server ip)
nameserver xxx.xxx.xxx.xxx(enter your alt dns server ip)
Lưu bộ đệm đã sửa đổi (TRẢ LỜI "Không" SẼ PHÁ HỦY CÁC THAY ĐỔI) ?
<---Nhập "y"
Tên tệp cần ghi: resolv.conf
<---ENTER
Sau đây là một ví dụ:
Mã:
nameserver 8.8.8.8
nameserver 8.8.4.4
Bước 3: Khởi động lại mạng
Khởi động lại giao diện mạng của bạn theo cách thủ công với các thiết lập mới.Đối với Ubuntu 20.04 và 18.04, hãy sử dụng lệnh netplan để áp dụng các thay đổi và khởi động lại mạng. Lệnh là:
Mã:
sudo netplan apply[B][/b]
Mã:
systemctl restart ifup@eth0
Mã:
ifconfig
Mã:
eth0Linkencap:EthernetdirecciónHW00:33:27:46:2v:34
Direc.inet:192.168.1.101Difus.:0.0.0.0Másc:255.255.255.0
...[B][/b]
Mã:
sudo /etc/init.d/networking restart
Mã:
*Reconfiguring network interfaces… [OK]
Cấu hình Tên máy chủ
Tên máy chủ của Máy chủ Ubuntu hoặc Máy tính để bàn đang được cấu hình trong các tệp /etc/hostname và /etc/hosts. Các tệp /etc/hostname đặt tên máy chủ hệ thống thực tế trong khi /etc/hosts được sử dụng để phân giải tên cục bộ.Trong ví dụ này, tôi sẽ đổi tên máy chủ của hệ thống thành obelix.example.com.
Trước tiên, hãy chỉnh sửa tệp /etc/hostname
Mã:
sudo nano /etc/hostname
Mã:
obelix

Sau đó mở tệp /etc/hosts bằng trình chỉnh sửa:
Mã:
sudo nano /etc/hosts
Mã:
192.168.1.100 obelix.example.com obelix

Định dạng như sau:
[Địa chỉ IP] [tên máy chủ đầy đủ bao gồm tên miền] [phần cục bộ của tên máy chủ]
Cuối cùng, khởi động lại hệ thống để áp dụng thay đổi tên máy chủ.