порт, що використовується, не відображається у виході неттостату


11

У яких сценаріях порт, який використовується процесом, не відображається у netstat -aвиході.

Я бігаю jenkinsна своїй машині. Він прослуховує порт 8080. Я намагаюся запустити інший процес, який намагається зв’язати цей самий порт, і він не вдається з помилкою, що порт вже використовується.

Тепер, коли я це роблю netstat -a | grep 8080, він не відображається у виході. Після зупинки jenkinsмій процес успішно прив’язаний до 8080 року. Хтось підказує, що відбувається?

Я запускаю CentOS.


1
Спробуйте netstat -lp, показуючи процеси , які слухаєте .
sr_

6
Спробуйте також netstat -an | grep 8080, якщо 8080 є у вашому /etc/servicesфайлі і замінюється його символічним назвою.
Flup

2
Інший підхід був би використаний lsof -i :8080
Валентин Байрамі

1
як netstat -an і lsof -i: 8080 працював .. Дякую за допомогу !!!
rs

Ваш порт, ймовірно, відображається по імені, а не за номером. Uset netstat -an

Відповіді:


4

Просто був подібний випадок на Ubuntu 14.04. Дійсно, порт за замовчуванням jenkins (8080) відображається на ім'я "http-alt" в / etc / services. Ви можете легко це перевірити

grep 8080 /etc/services
http-alt    8080/tcp    webcache    # WWW caching service
http-alt    8080/udp

Крім netstat ви можете розглянути можливість використання ss

ss -ntl | grep 8080

або

ss -tl | grep http-alt

1

У яких сценаріях порт, який використовується процесом, не відображається у виході netstat -a.

Якщо все працює правильно, ніколи. Як було сказано вище, номер вашого порту може бути замінено на ім’я служби, як зазначено в /etc/services.

Використання netstat -naгарантує, що порти обслуговування не перекладаються на назви служб.


0

Я завжди використовую:

netstat -tupna

Таким чином ви нічого не пропустите.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.