Netstat - một công cụ dòng lệnh để giám sát các kết nối mạng

Netstat Command Line Tool



Netstat (thống kê mạng) là một công cụ dòng lệnh để giám sát các kết nối mạng cả đến và đi cũng như xem bảng định tuyến, thống kê giao diện, kết nối giả mạo, thành viên đa phương, v.v. Nó có thể được sử dụng để liệt kê tất cả các kết nối mạng (ổ cắm) trên hệ thống. Nó liệt kê tất cả các kết nối ổ cắm tcp, udp và các kết nối ổ cắm unix. Netstat có sẵn trên tất cả các Hệ điều hành giống Unix và cũng có sẵn trên Hệ điều hành Windows. Nó rất hữu ích về mặt khắc phục sự cố mạng và đo lường hiệu suất. netstat là một trong những công cụ gỡ lỗi dịch vụ mạng cơ bản nhất, cho bạn biết cổng nào đang mở và liệu có chương trình nào đang nghe trên cổng hay không.

Liệt kê tất cả các kết nối

Lệnh đầu tiên và đơn giản nhất là liệt kê tất cả các kết nối hiện tại. Chỉ cần chạy lệnh netstat với một tùy chọn.







# netstat -a



kiểm tra đoạn mã sau để biết đầu ra netstat. Đầu ra chứa nhiều trang, vì vậy một số dữ liệu bị bỏ qua.



netstat





Giải thích từng cột

Vì vậy - cho chúng tôi biết ổ cắm được liệt kê là TCP hay UDP. Kết nối TCP được sử dụng để duyệt web và tải xuống tệp. Kết nối UDP được sử dụng bởi một số trò chơi máy tính có nhịp độ nhanh và đôi khi được sử dụng bởi các luồng trực tiếp.

Recv-Q & Gửi-Q - cho chúng tôi biết có bao nhiêu dữ liệu trong hàng đợi cho socket đó, đang chờ được đọc (Recv-Q) hoặc được gửi (Send-Q). Tóm lại: nếu đây là 0, mọi thứ đều ổn, nếu có các giá trị khác 0 ở bất kỳ đâu, có thể có sự cố.



Địa chỉ địa phương & địa chỉ nước ngoài - cho biết máy chủ và cổng nào mà các ổ cắm được liệt kê được kết nối. Đầu cục bộ luôn nằm trên máy tính mà bạn đang chạy netstat và đầu cuối bên ngoài dành cho máy tính kia

Tiểu bang - cho biết các ổ cắm được liệt kê ở trạng thái nào. Giao thức TCP xác định các trạng thái, bao gồm LISTEN (đợi một số máy tính bên ngoài liên hệ với chúng tôi) và ESTABLISHED (sẵn sàng giao tiếp). Điều kỳ lạ trong số này là trạng thái ĐÓNG CHỜ. Điều này có nghĩa là máy nước ngoài hoặc máy từ xa đã đóng kết nối, nhưng chương trình cục bộ bằng cách nào đó không tuân theo.

Lệnh trên hiển thị tất cả các kết nối từ các giao thức khác nhau như tcp, udp và unix socket. Tuy nhiên điều này không hoàn toàn hữu ích. Các quản trị viên thường muốn chọn ra các kết nối cụ thể dựa trên các giao thức hoặc số cổng chẳng hạn.

Không phân giải máy chủ, cổng và tên người dùng trong đầu ra netstat

Khi bạn không muốn hiển thị tên của máy chủ, cổng hoặc người dùng, hãy sử dụng tùy chọn netstat -n. Điều này sẽ hiển thị dưới dạng số, thay vì phân giải tên máy chủ, tên cổng, tên người dùng. Điều này cũng tăng tốc đầu ra, vì netstat không thực hiện bất kỳ tra cứu nào.

# netstat -an

Chỉ liệt kê các kết nối TCP hoặc UDP

Để chỉ liệt kê các kết nối tcp, hãy sử dụng các tùy chọn t.

# netstat -t

Tương tự như vậy để liệt kê chỉ các kết nối udp, hãy sử dụng tùy chọn u.

Liệt kê tất cả các kết nối LISTENING

# netstat -l

Liệt kê tất cả các cổng nghe TCP

# netstat -lt

Liệt kê tất cả các cổng nghe UDP

# netstat -lu

Hiển thị tên dịch vụ với PID

# netstat -tp

Hiển thị định tuyến IP nhân

# netstat -r
bảng định tuyến hạt nhân

Hiển thị các giao dịch giao diện mạng

# netstat -i

Hiển thị thống kê mạng RAW

# netstat –st Statistics –raw

netstat

Bạn chỉ có thể sử dụng netstat thực sự hiệu quả nếu bạn biết nhiều về mạng và hệ thống Linux của mình.