1. Giới thiệu
Khi sử dụng Ubuntu, đôi khi bạn có thể gặp phải vấn đề mất kết nối mạng đột ngột. Vấn đề này không chỉ làm gián đoạn công việc mà còn khó giải quyết, đặc biệt đối với người mới bắt đầu, do có nhiều nguyên nhân khác nhau.
Bài viết này sẽ xác định các nguyên nhân chính gây ra lỗi mất kết nối mạng trên Ubuntu và giải thích rõ ràng cách khắc phục cho từng trường hợp. Chúng tôi mong muốn cung cấp nội dung hữu ích cho nhiều đối tượng người dùng, từ người mới bắt đầu đến người dùng có kinh nghiệm.
2. Các nguyên nhân chính gây ra lỗi kết nối mạng
Liên quan đến phần cứng
Nhiều vấn đề về mạng trên Ubuntu có thể xuất phát từ phần cứng vật lý. Hãy kiểm tra các yếu tố sau:
- Sự cố với cáp LAN hoặc bộ định tuyến (router)
- Cáp LAN đang kết nối có thể bị lỏng hoặc hỏng. Hãy thử thay bằng cáp khác hoặc khởi động lại bộ định tuyến.
- Card giao diện mạng (NIC) bị lỗi
- Nếu NIC không được nhận diện, có thể phần cứng đó đã bị lỗi. Sử dụng lệnh
lshw -C network
để kiểm tra trạng thái của NIC.
Liên quan đến phần mềm
Hầu hết các vấn đề về mạng đều do lỗi cấu hình hoặc cài đặt phần mềm không đúng.
- Thiếu trình điều khiển (driver)
- Ngay sau khi cài đặt Ubuntu mới, trình điều khiển cho NIC có thể chưa được cài đặt đúng cách. Nên cài đặt trình điều khiển mới nhất từ kho lưu trữ chính thức.
- Cấu hình mạng sai
- Nếu địa chỉ IP không được cấu hình chính xác hoặc giao diện mạng bị vô hiệu hóa, kết nối sẽ thất bại. Hãy kiểm tra lại các tệp cấu hình.
- Tường lửa (Firewall) và cài đặt bảo mật
- Nếu tường lửa đặt ra các giới hạn quá mức, kết nối internet có thể bị chặn. Kiểm tra cài đặt tường lửa bằng lệnh
ufw
.
3. Các bước cơ bản để khắc phục sự cố
Kiểm tra phần cứng
- Kiểm tra vật lý cáp
- Đảm bảo cáp LAN được kết nối đúng cách.
- Thử kết nối sang cổng hoặc bộ định tuyến khác để kiểm tra hoạt động.
- Kiểm tra trạng thái NIC
- Chạy lệnh
lshw -C network
để xác nhận NIC có được nhận diện chính xác hay không. - Nếu NIC không được nhận diện, có thể cần sửa chữa vật lý.
Kiểm tra phần mềm
- Kiểm tra trạng thái mạng
- Chạy lệnh
nmcli
để kiểm tra trạng thái mạng. - Nếu cần, khởi động lại dịch vụ mạng bằng lệnh
sudo systemctl restart NetworkManager
.
- Lưu ý khi sử dụng môi trường ảo hóa
- Nếu bạn đang sử dụng máy ảo, kết nối có thể bị chặn do cấu hình của máy chủ (chế độ NAT hoặc Bridge). Trong trường hợp này, hãy kiểm tra cài đặt mạng của máy ảo.

4. Các giải pháp cụ thể
Kiểm tra và sửa đổi cấu hình giao diện mạng
Để kiểm tra xem giao diện mạng của Ubuntu đã được cấu hình đúng cách hay chưa, hãy thử các bước sau:
- Kiểm tra giao diện mạng hiện tại
- Mở Terminal và chạy lệnh
ip a
. - Giao diện có trạng thái “state UP” là giao diện đang hoạt động.
- Nếu không thấy giao diện nào, hãy chuyển sang bước tiếp theo.
- Kiểm tra tệp cấu hình
- Trên Ubuntu, các tệp cấu hình mạng được lưu trữ trong thư mục
/etc/netplan/
. - Sử dụng lệnh
sudo nano /etc/netplan/01-netcfg.yaml
để chỉnh sửa tệp.
- Cấu hình mẫu
- Hãy thêm ví dụ cấu hình sau để bật DHCP:
network: version: 2 ethernets: enp0s3: dhcp4: true
- Áp dụng cấu hình
- Sau khi lưu tệp, áp dụng cấu hình bằng lệnh sau:
sudo netplan apply
Kiểm tra và cài đặt trình điều khiển (driver)
Nếu giao diện mạng không được phát hiện, có thể do vấn đề về trình điều khiển.
- Kiểm tra trạng thái trình điều khiển hiện tại
- Sử dụng lệnh sau để lấy thông tin chi tiết về NIC:
lshw -C network
- Nếu hiển thị “UNCLAIMED”, điều đó cho thấy trình điều khiển chưa được cài đặt.
- Cài đặt trình điều khiển
- Để cài đặt trình điều khiển cần thiết, hãy thử các bước sau:
sudo apt update sudo apt install linux-modules-extra-$(uname -r)
- Khởi động lại
- Sau khi cài đặt, khởi động lại hệ thống để kích hoạt trình điều khiển.
Kiểm tra và sửa đổi cài đặt DNS
Vấn đề về DNS cũng có thể gây mất kết nối mạng. Hãy kiểm tra bằng các bước sau:
- Kiểm tra cài đặt DNS hiện tại
- Chạy lệnh
cat /etc/resolv.conf
và kiểm tra xem máy chủ DNS đã được cấu hình đúng chưa.
- Thay đổi cài đặt máy chủ DNS
- Mở tệp cấu hình và chỉ định máy chủ DNS như sau:
sudo nano /etc/resolv.conf
nameserver 8.8.8.8 nameserver 8.8.4.4
- Xóa bộ nhớ đệm DNS
- Xóa bộ nhớ đệm DNS bằng lệnh sau:
sudo systemd-resolve --flush-caches
Khởi động lại dịch vụ mạng
Ngay cả khi cài đặt mạng chính xác, kết nối vẫn có thể thất bại do trạng thái của dịch vụ.
- Khởi động lại NetworkManager
- Khởi động lại dịch vụ bằng lệnh sau:
sudo systemctl restart NetworkManager
- Kiểm tra hoạt động
- Sử dụng lệnh
nmcli
để kiểm tra trạng thái kết nối:nmcli device status
5. Các trường hợp khắc phục sự cố mẫu
Trường hợp 1: Không nhận diện được mạng LAN có dây
- Nguyên nhân ví dụ: Trình điều khiển NIC chưa được cài đặt.
- Các bước khắc phục:
- Kiểm tra NIC bằng lệnh
lshw -C network
. - Cài đặt trình điều khiển cần thiết.
- Kiểm tra lại cài đặt mạng sau khi khởi động lại.
Trường hợp 2: Không thể kết nối Wi-Fi
- Nguyên nhân ví dụ: Không phát hiện được SSID.
- Các bước khắc phục:
- Kiểm tra các mạng Wi-Fi khả dụng bằng lệnh
nmcli dev wifi list
. - Kết nối thủ công nếu cần:
nmcli dev wifi connect "Tên SSID" password "Mật khẩu"
Trường hợp 3: Xung đột địa chỉ IP
- Nguyên nhân ví dụ: Cùng một địa chỉ IP đang được sử dụng bởi nhiều thiết bị.
- Các bước khắc phục:
- Chỉnh sửa tệp cấu hình trong
/etc/netplan/
và gán IP tĩnh. - Áp dụng cấu hình và khởi động lại mạng.
6. Tóm tắt
Bài viết này đã giới thiệu các nguyên nhân chính và giải pháp cụ thể cho vấn đề mất kết nối mạng trên Ubuntu. Chúng tôi đã đề cập đến nhiều cách khắc phục sự cố, từ kiểm tra phần cứng đến cài đặt phần mềm, cũng như khởi động lại DNS và các dịch vụ.
Vấn đề kết nối mạng có vẻ phức tạp, nhưng bằng cách thử các giải pháp từng bước, hầu hết các trường hợp đều có thể được giải quyết. Nếu vấn đề vẫn không được khắc phục, hãy tham khảo tài liệu chính thức của Ubuntu hoặc các diễn đàn Linux.