ss 출력에 localhost를 표시하지 않는 방법은 무엇입니까?

ss 출력에 localhost를 표시하지 않는 방법은 무엇입니까?

이 글을 입력하면서 ss -atur많은 연결을 얻었 지만 대부분은 그럴 운명이었고 localhost나는 그것에 전혀 관심이 없습니다.

대상에 대한 연결을 표시하지 않도록 출력을 필터링하려면 어떻게 해야 합니까 localhost?

시도 ss -atur '(dst ne localhost)'했지만 Error: an inet prefix is expected rather than "(dst".. 대괄호 없이는 ss: bison bellows (while parsing filter): "syntax error!" Sorry..

내가 할 수 있는 최선의 방법은 grep으로 파이프하는 것이지만 localhost복잡한 정규식 패턴 없이는 소스와 대상을 구별할 수 없습니다.

답변1

충분한 구문은 다음과 같습니다:

ss -atur '! dst localhost'

나는 다음을 사용하고 싶지만(괄호와 키워드 사이의 공백에 주의하세요):

ss -atur '! ( dst 127.0.0.1 or dst [::1] )'

사용로컬 호스트이상한 동작이 있는 것 같습니다. 에서 예상대로 작동하지만 음수가 아닌 경우 IPv6을 표시하거나 둘 다를 표시하는 데 ss -atru '! dst localhost'사용되지 않는 한 기본적으로 IPv4로 설정되는 것 같습니다 . 기본값은 둘 다 표시하는 것으로 예상했을 것입니다.ss -6ss -46

에서 언급했듯이 문서가 약간 부족합니다.이 Q&A. 좀 남았어man에서는 이 페이지(아마도 이전에 삭제된 문서를 사용함)가 더 유용합니다.

https://www.cyberciti.biz/files/ss.html

(또한 거기에서 발견되었습니다 :http://linux-ip.net/gl/ss/ss-node5.html하지만 위의 한 페이지 형식이 더 유용해 보입니다)

관련 정보