Làm cách nào để tôi có được số lượng (hiện tại) các kết nối TCP được thiết lập cho một cổng cụ thể?


7

Làm cách nào để tôi có được số lượng (hiện tại) các kết nối TCP được thiết lập cho một cổng cụ thể?

Tôi đã quản lý để có được bộ đếm cho lưu lượng truy cập hoạt động bằng cách thực hiện tức là cho RTMP đi.

iptables -N $CHAIN 
iptables -I OUTPUT -j $CHAIN
iptables -A $CHAIN -p tcp --sport 1935
iptables-save

Nhưng bây giờ tôi cần số lượng kết nối hiện tại (không phải là bộ đếm) cho mỗi giao thức

Tôi có thể nhận được tổng số với: netstat -ant | grep thành lập | wc -l

Có ai giúp được không? Tôi không phải là một guru iptables.

Câu trả lời:


7

Bạn nói bạn không phải là một đạo sư, nhưng chúng ta là ai? Bạn đã thực hiện hầu hết các công việc nặng nhọc; Tôi chắc rằng phần còn lại sẽ xảy ra với bạn trong một hoặc hai phút.

Cho đến lúc đó, hãy thử netstat -an|grep ESTABLISHED | grep -w 1935.


lsof -ni: 1935 -sTCP: THÀNH LẬP | wc -l cũng đã được đề xuất cho tôi?, có lợi ích gì giữa lsof và netstat không?
James Bennet

Cả hai đều móc vào các cấu trúc hạt nhân bên dưới. Các nhị phân có cùng kích thước, do đó sẽ có dấu chân bộ nhớ tương đương. Offhand, tôi có thể nghĩ rằng không có sự khác biệt lớn.
MadHatter

Tôi được thông báo rằng chúng được cho là chậm (Hộp sẽ có kết nối 20k) và sử dụng iptables, nhưng nó có vẻ không phù hợp với tôi?
James Bennet

Iptables dường như không phù hợp với tôi, quá. Cả iptables và netstat / lsof đều là các công cụ không gian người dùng đơn giản khai thác cấu trúc kernel, vì vậy tôi không chắc tại sao một cái sẽ chậm hơn các phần khác trừ khi các phần không gian người dùng có kích thước cực kỳ khác nhau (không phải vậy). Làm thế nào thường xuyên bạn có ý định thăm dò thống kê này?
MadHatter

Cứ sau 5 phút, cron job.
James Bennet

5

Nó hoạt động với tôi:

# netstat -ant | grep ESTABLISHED | wc -l

đầu ra:

total connection 22....

À, tôi quên mất "t" cho TCP, cảm ơn.
James Bennet

2

Có thêm một lệnh nếu bạn muốn danh sách ip và số lượng sử dụng kết nối

netstat -natu | awk '{in $ 5}' | cắt -d: -f1 | sắp xếp | uniq -c | sắp xếp

nó cung cấp cho bạn ip và danh sách kết nối ...

cảm ơn bạn


Rackbank, vui lòng chỉnh sửa câu trả lời này thành câu trả lời trước đó của bạn, thay vì đăng bài mới thứ hai.
MadHatter

điều này khác với lần trước ... người dùng sẽ nhầm lẫn
Radhe

2

netstat + greplà một tùy chọn tốt và đơn giản cho một vài kết nối nhưng nếu bạn có số lượng kết nối lớn thì tôi sẽ khuyên dùng sstheo khuyến nghị trong nixCraft .

Ví dụ: ss -s

Total: 78 (kernel 79)
TCP:   31 (estab 27, closed 0, orphaned 0, synrecv 0, timewait 0/0), ports 16

Transport Total     IP        IPv6
*     79        -         -        
RAW   0         0         0        
UDP   4         2         2        
TCP   31        2         29       
INET      35        4         31       
FRAG      0         0         0  
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.