Làm thế nào để gọi lsof đúng cách để lấy tất cả các kết nối TCP?


14
# lsof -n -itcp | wc
     92     919   10212

# lsof -n | grep TCP | wc
   2482   27222  373861

Tôi đang làm gì sai lsof -itcp? Gọi như vậy là bỏ qua một phần của các kết nối, có vẻ như đây là kết nối của các chủ đề.

Câu trả lời:


16

Cú pháp đúng là:

lsof -a -i4 -i6 -itcp

Điều này chọn các socket TCP là IPv4 hoặc IPv6.


1
bạn nên thêm -anó vào VÀ chúng
Christian

Cảm ơn Christian, giải pháp ban đầu của tôi cũng bao gồm hoạt động UDP. Cập nhật.
CodeWriter23

1

Hãy nhìn vào hai đầu ra. Dưới đây là các mẫu từ hệ thống của tôi

lsof -n -itcp | head -4
COMMAND     PID        USER   FD   TYPE DEVICE SIZE/OFF NODE NAME
rpcbind    1509        root    8u  IPv4   9013      0t0  TCP *:sunrpc (LISTEN)
rpcbind    1509        root   11u  IPv6   9016      0t0  TCP *:sunrpc (LISTEN)
rpc.statd  1537       statd    8u  IPv4  10059      0t0  TCP *:36035 (LISTEN)

lsof -n | grep TCP | head -4
rpcbind    1509             root    8u     IPv4               9013      0t0        TCP *:sunrpc (LISTEN)
rpcbind    1509             root   11u     IPv6               9016      0t0        TCP *:sunrpc (LISTEN)
rpc.statd  1537            statd    8u     IPv4              10059      0t0        TCP *:36035 (LISTEN)
rpc.statd  1537            statd   10u     IPv6              10063      0t0        TCP *:45203 (LISTEN)

Một sự nhìn chăm chú nhanh chóng cho thấy sự khác biệt rõ ràng duy nhất cho đến nay là khoảng trắng. Điều này có thể được so sánh đủ dễ dàng để tìm thấy sự khác biệt thực sự:

lsof -n -itcp | sort >1
lsof -n | grep TCP | sort >2
diff -wu 1 2 | grep '^[+-]'
--- 1   2015-10-13 20:43:12.588658249 +0100
+++ 2   2015-10-13 20:43:18.272678740 +0100
-COMMAND     PID        USER   FD   TYPE DEVICE SIZE/OFF NODE NAME
+dconf      3618 3634     roaima   11u     IPv6              12705      0t0        TCP [::1]:45177->[::1]:6010 (ESTABLISHED)
+gdbus      3632 3633     roaima    5u     IPv6              14008      0t0        TCP [::1]:45179->[::1]:6010 (ESTABLISHED)
+virt-mana  3618 3636     roaima   11u     IPv6              12705      0t0        TCP [::1]:45177->[::1]:6010 (ESTABLISHED)
+virt-mana  3618 3645     roaima   11u     IPv6              12705      0t0        TCP [::1]:45177->[::1]:6010 (ESTABLISHED)

Dựa trên đầu ra này, tôi đề nghị rằng sự khác biệt trong trường hợp của tôi là lưu lượng IPv6. Bạn có thể muốn xem lại tình huống của mình nhưng tôi nghi ngờ nó cũng như vậy.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.