Как проверить с помощью C, если порт на моем локальном компьютере (если требуется, передавая IP или интерфейс, тоже), находится в состоянии прослушивания? Я не хочу подключаться к этому порту для проверки, потому что я не хочу раздражать службу за этим портом.В linux, как проверить, находится ли порт в состоянии прослушивания, не пытаясь подключиться
Я хочу использовать это, чтобы добавить отсутствующий элемент net.tcp.listen в Zabbix.
EDIT - ЭТО РЕАЛЬНАЯ ОТВЕТ:
Правильный путь для чтения таблиц сокетов:
/Труды/нетто/TCP /ргос/сеть/tcp6
Они содержат строки например:
sl local_address rem_address st tx_queue rx_queue tr tm->when retrnsmt uid timeout inode
0: 00000000:1F40 00000000:0000 0A 00000000:00000000 00:00000000 00000000 101 0 4083927 1 f5d15240 750 0 0 2 -1
1: 00000000:2742 00000000:0000 0A 00000000:00000000 00:00000000 00000000 1002 0 6100 1 decd76c0 750 0 0 2 -1
и может легко анализироваться для прослушивания сокетов (dst: 00000000: 0000). Строка на netstat показывает, что netstat работает одинаково.
Вы должны отправить ответ на свой вопрос, а затем принять его, а не включать его в вопрос. – Langston