1.10.1標準
lsofを使い、TCP port 8443でLISTENするprocessとsocketだけを、host名・service名へ変換せず表示する。
適切なコマンドはどれか。
× 不正解
lsof -iTCP:PORTと-sTCP:LISTENを組み合わせ、-nPで名前解決を抑えると対象listenerを明確に確認できる。
詳細解説
誤り
lsof -nP -iTCP:84438443のTCP socketを扱うが、LISTEN以外の接続も含み得る。
portとprotocolは合うがstate filterがないためestablished connectionも含み得る。
誤り
lsof -nP -iUDP:8443UDP socketを対象にする。
UDPにはTCPのLISTEN stateがなく、調査対象protocolも異なる。
正しい
lsof -nP -iTCP:8443 -sTCP:LISTENTCP 8443かつLISTEN状態へ絞り、名前解決も抑える。
TCP 8443、LISTEN、numeric表示という条件をすべて満たす。
誤り
lsof +D /proc/8443directory配下のopen fileを再帰探索する形式で、port指定ではない。
+Dはdirectory treeのopen file検索で、network portを指定する構文ではない。
実際に確かめる
一時的な検証環境で実行できる例です。
lsof -h 2>&1 | grep -E -- '-i|Internet|TCP' | head -n 3期待される結果
network address選択に関するhelp行理解のポイント
- -iTCP:PORT
- -sTCP:LISTEN
- -nPは名前解決抑制
確認時の注意
- 確認環境: lsof help / process変更なし
基礎のおさらい
socketもfile
lsofはprocessがopenしているnetwork socketをfile descriptorとして一覧できる。
複数filter
-iと-sを組み合わせるとprotocol・port・stateを段階的に絞り込める。
問題IDKL-102-1121
確認環境lsof help / process変更なし
最終技術確認2026-08-13
誤り・権利侵害を報告