Bài viết này ItsmeIT sẽ giới thiệu về cách sử dụng lệnh Netstat trong Linux và các phiên bản Ubuntu hoặc CentOS. Các lệnh Netstat cơ bản cũng như các tùy chọn nâng cao và ví dụ minh họa được trình bày chi tiết trong bài viết để giúp người dùng hiểu rõ hơn về công cụ này và sử dụng hiệu quả trong quản lý mạng.
Cách cài đặt và sử dụng lệnh Netstat trong Linux và Ubuntu hoặc CentOS

Giới thiệu về Netstat và cách cài đặt trên Ubuntu hoặc CentOS
Netstat trong Linux là một tiện ích cần thiết để giúp admin khắc phục sự cố kết nối mạng bằng cách cung cấp thông tin chi tiết về trạng thái kết nối mạng, các port đang được sử dụng và quá trình truyền dữ liệu giữa các ứng dụng. Nếu trên hệ thống Ubuntu hoặc Linux của bạn chưa có lệnh netstat, bạn có thể sử dụng lệnh để cài đặt nó, gói net-tools cũng bao gồm các tiện ích bổ sung như arp, ifconfig, rarp, nameif và route.
sudo apt install net-tools
Hoặc với centOS:
sudo yum install net-tools
Một số ví dụ sử dụng và ý nghĩa của lệnh netstat trong Ubuntu hoặc Linux
netstat -a;
Lệnh này hiển thị tất cả các kết nối và socket đang được mở trên hệ thống của bạn. Nó rất hữu ích để xác định nguyên nhân của các sự cố kết nối mạng và để kiểm tra các ứng dụng đang chạy trên hệ thống.
Ví dụ, nếu bạn đang gặp sự cố kết nối với cơ sở dữ liệu MySQL, bạn có thể sử dụng lệnh netstat -a
trên Linux hoặc Ubuntu để xác định các kết nối TCP đang chờ đối với cổng mà MySQL đang sử dụng (thông thường là cổng 3306). Nếu bạn thấy nhiều kết nối TCP đang chờ đối với cổng này, có thể rằng máy chủ MySQL đang quá tải và không đủ tài nguyên để xử lý các yêu cầu kết nối mới.
Qua đó bạn có thể sử dụng lệnh netstat trong linux để tìm và khắc phục vấn đề bằng cách tăng tài nguyên máy chủ hoặc tối ưu hóa cơ sở dữ liệu để giảm tải cho MySQL.

netstat -t;
Lệnh netstat trong Linux netstat -t
chỉ hiển thị các kết nối TCP đang hoạt động. Nó rất hữu ích khi bạn muốn kiểm tra các kết nối TCP được thiết lập trên hệ thống và giúp xác định sự cố kết nối mạng trên giao thức TCP.

Ví dụ, để kiểm tra kết nối đến MySQL trên cổng TCP 3306 trong Linux hoặc Ubuntu, ta có thể sử dụng lệnh netstat -t và lọc kết quả bằng cách sử dụng grep, giúp kiểm tra trạng thái kết nối mạng của các port và ứng dụng trên hệ thống.
netstat -t | grep 3306
Kết quả sẽ hiển thị tất cả các kết nối đang hoạt động đến cổng 3306, bao gồm cả các kết nối được thiết lập và các kết nối đang chờ, khi sử dụng lệnh netstat trong linux. Nếu có bất kỳ kết nối nào bị chặn, ta có thể kiểm tra các cấu hình tường lửa hoặc phần mềm an ninh khác để đảm bảo rằng chúng không ngăn chặn các kết nối đến cổng TCP 3306.
netstat -p;
Lệnh này hiển thị quá trình đang sử dụng các kết nối và port. Lệnh netstat -p
trong Ubuntu hoặc trong rất hữu ích để xác định ứng dụng nào đang sử dụng kết nối mạng và các port trên hệ thống của bạn.

-p
(ảnh minh họa)netstat -s;
Lệnh netstat -s
được sử dụng để hiển thị thống kê các thông số thống kê mạng như các giao thức TCP, UDP, ICMP, IP, các lỗi mạng và nhiều thông tin khác. Dưới đây là một số ví dụ cụ thể về việc sử dụng lệnh netstat -s
trên máy chủ Ubuntu và Linux:

- Hiển thị thống kê cho giao thức TCP:
netstat -s | grep TCP
- Hiển thị thống kê cho giao thức UDP:
netstat -s | grep UDP
- Hiển thị thống kê cho giao thức ICMP:
netstat -s | grep ICMP
netstat -n;
Lệnh này hiển thị tất cả các kết nối và socket đang hoạt động trên hệ thống của bạn, nhưng không thực hiện phân giải địa chỉ IP thành tên miền. Nó rất hữu ích khi bạn muốn xem địa chỉ IP thực sự của các kết nối mạng trên hệ thống của bạn.
Ví dụ về lệnh netstat
trong Linux với tùy chọn -n
và ảnh chụp màn hình dưới đây cho thấy 5 kết nối hiển thị, bao gồm:

- Một kết nối TCP đang ở trạng thái “CLOSING” (đang đóng kết nối), địa chỉ IP cục bộ là 192.168.1.141, cổng cục bộ là 42626, địa chỉ IP của đối tác kết nối từ xa là 35.174.127.31 và cổng từ xa là 443.
- Bốn kết nối TCP6 đang hoạt động trên các địa chỉ IPv6 khác nhau, bao gồm các trạng thái “TIME_WAIT”, “ESTABLISHED” và “CLOSE_WAIT”.
netstat -i;
Lệnh này sẽ hiển thị các thống kê về các giao diện mạng. Khi sử dụng lệnh netstat trong linux với tùy chọn -i
, bạn có thể xem số lượng gói tin được gửi và nhận qua mỗi giao diện, tổng lượng dữ liệu được truyền qua mỗi giao diện, số lượng lỗi xảy ra và các thông tin khác liên quan đến các giao diện mạng. Lệnh này giúp bạn giám sát và quản lý hiệu suất của các giao diện mạng.

Kết quả của lệnh “netstat -i” hiển thị bảng thống kê về các interface mạng trên máy tính, bao gồm các thông tin như:
- Iface: tên của interface mạng
- MTU: kích thước tối đa của gói tin truyền qua interface đó
- RX-OK: số gói tin nhận được mà không có lỗi
- RX-ERR: số gói tin nhận được bị lỗi
- RX-DRP: số gói tin bị từ chối nhận do lỗi hoặc do buffer quá tải
- RX-OVR: số gói tin bị từ chối nhận do bộ đệm bị tràn
- TX-OK: số gói tin đã gửi thành công
- TX-ERR: số gói tin gửi bị lỗi
- TX-DRP: số gói tin bị từ chối gửi do lỗi hoặc do buffer quá tải
- TX-OVR: số gói tin bị từ chối gửi do bộ đệm bị tràn
- Flg: các cờ đánh dấu của interface
Trong ví dụ trong ảnh chụp màn hình ở trên, có hai interface được liệt kê: eno1 và lo.
netstat -r;
Lệnh này sẽ hiển thị bảng định tuyến của máy tính. Khi sử dụng lệnh netstat trong ubuntu với option -r
này, bạn có thể xem danh sách các định tuyến hiện tại trên máy tính của bạn. Lệnh này hữu ích khi bạn muốn xác định đường đi của các gói tin và giúp bạn kiểm tra tính đúng đắn của bảng định tuyến.

netstat -g;
Lệnh netstat
Linux với tùy chọn -g
sẽ hiển thị thông tin về các nhóm đa phát (multicast) đang sử dụng trên máy tính. Khi sử dụng lệnh này, bạn có thể xem danh sách các nhóm đa phát trên máy tính và các địa chỉ IP của các thành viên trong nhóm. Lệnh netstat trong linux -g
giúp bạn quản lý các nhóm đa phát trên mạng của bạn.

netstat -c;
Lệnh này sẽ hiển thị kết quả liên tục và tự động cập nhật sau mỗi giây. Khi sử dụng lệnh này, bạn có thể xem các thay đổi liên quan đến các kết nối mạng trên máy tính của bạn. Lệnh này rất hữu ích để giám sát hoạt động mạng và phát hiện các sự cố kết nối mạng.

Ví dụ, để sử dụng lệnh netstat trong Linux hoặc Ubuntu với tùy chọn -c
xem liên tục các kết nối TCP hiện tại đang hoạt động trên hệ thống, chúng ta có thể sử dụng lệnh sau:
netstat -c -t

Kết quả sẽ được hiển thị liên tục và được cập nhật sau mỗi giây, giúp chúng ta theo dõi các kết nối đang hoạt động trên hệ thống một cách nhanh chóng và thuận tiện.
Đó là một số chia sẻ và hướng dẫn về cách sử dụng lệnh netstat trong Linux (bao gồm cả Ubuntu và CentOS) và các ví dụ cụ thể để giúp quản trị viên mạng và sysadmin kiểm tra và phân tích các kết nối mạng trên hệ thống một cách hiệu quả hơn. Việc nắm vững cách sử dụng lệnh netstat này giúp phát hiện và giải quyết các vấn đề liên quan đến kết nối mạng một cách nhanh chóng và chính xác.
– Advertising –