나는 내 컴퓨터에서 어느 포트가 적극적으로 수신 대기(사용 중?)하는지 이해하려고 노력하고 있지만 실제로 내가 무엇을 하고 있는지는 모릅니다. 제가 실험한 세 가지 명령은 nmap
, ss
(? netscan
?) 및 입니다 lsof
.
netscan
1개의 포트만 활성 수신 중이라고 보고합니다(631).
$ sudo nmap -sT localhost
Starting Nmap 7.91 ( https://nmap.org ) at 2021-06-02 21:28 EDT
Nmap scan report for localhost (127.0.0.1)
Host is up (0.000094s latency).
Not shown: 999 closed ports
PORT STATE SERVICE
631/tcp open ipp
ss
(? netscan
?)는 2개의 포트가 사용 중이라고 보고합니다(631 & 53):
$ sudo ss -tulwn | grep LISTEN
tcp LISTEN 0 4096 127.0.0.53%lo:53 0.0.0.0:*
tcp LISTEN 0 5 127.0.0.1:631 0.0.0.0:*
tcp LISTEN 0 5 [::1]:631 [::]:*
마지막으로 를 사용하여 개별 포트를 확인하면 lsof -i:xx
631 및 53에 대한 결과는 물론 포트 80 및 443에 대한 결과도 표시됩니다.
$ sudo lsof -i:80
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
firefox 3481 me 74u IPv4 85172 0t0 TCP Machine:56024->lga25s63-in-f3.1e100.net:http (ESTABLISHED)
$ sudo lsof -i:443
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
skypeforl 2426 me 27u IPv4 77133 0t0 TCP Machine:60396->13.83.65.43:https (ESTABLISHED)
skypeforl 2453 me 72u IPv4 56536 0t0 TCP Machine:58945->40.86.187.166:https (ESTABLISHED)
firefox 3481 me 95u IPv4 81375 0t0 TCP Machine:53788->104.16.249.249:https (ESTABLISHED)
firefox 3481 me 157u IPv4 80283 0t0 TCP Machine:49080->lga34s15-in-f5.1e100.net:https (ESTABLISHED)
chrome-gn 3799 me 74u IPv4 55080 0t0 TCP Machine:42196->server-52-85-61-100.ewr53.r.cloudfront.net:https (CLOSE_WAIT)
chrome-gn 3799 me 95u IPv4 55072 0t0 TCP Machine:43998->104.16.248.249:https (CLOSE_WAIT)
나는 이 세 가지 명령이 기본적으로 동일한 정보에 대한 다른 관점이라고 생각했습니다. 이러한 명령 중 일부에서만 일부 포트가 표시되는 이유는 무엇입니까?
답변1
ss
와 의 차이부터 시작합니다 nmap
. 포트 53의 경우 localhost
로컬 시스템용으로 예약된 1,600만 개의 주소 간의 차이가 원인입니다 . 127.0.0.1
와 동일하지 않습니다 127.0.0.53
. 주소 127.0.0.1로 제한되는 ss
동안 로컬 시스템의 모든 포트를 보고합니다 .nmap
의 추가 보고서에 따르면 lsof
이는 매우 다른 것을 찾고 있습니다. 귀하 ss
와 명령은 상태, 즉 들어오는 연결을 기다리는 nmap
소켓을 찾고 있습니다 . LISTEN
귀하는 lsof
모든 소켓을 찾고 있습니다. 특히 여기에는 확립된 연결과 끊어진 연결이 포함됩니다. 당신은 물건을 찾고 있습니다어느 하나끝이 포트 80을 사용하고 있거나어느 하나end는 포트 443을 사용하고 있습니다.
핵심은 이 3가지 명령이 서로 다른 것을 보여준다는 것입니다. 왜냐하면 이것이 동일한 정보를 표시하고 있다는 믿음이 틀렸기 때문입니다. 이것은 사과와 오렌지, 바나나를 비교한 것입니다. 3개의 다른 명령은 서로 다른 정보를 표시하기 때문에 서로 다른 정보를 표시합니다.