Может ли один процесс прослушивать все порты?

В краткой форме вы можете сделать это так(благодаря @daemontosh answer):

lsb_release -a

...показать всю информацию.

Еще один краткий способ получить информацию —(благодаря ответам @HeathRaftery и @JourneymanGeek ):

cat /proc/version

, но есть много Unix, которые не поддерживают файловую систему /procпсевдо -.

1
26.08.2019, 18:10
1 ответ

Я не думаю, что есть способ заявить права на все возможные порты сразу, по крайней мере, не используя API-интерфейсы сокетов, однако программа может попытаться привязать все возможные порты один за другим. Если у нее не закончатся ресурсы, она сможет привязать все доступные порты, и как только это будет сделано, никакая другая программа не сможет привязать любой из этих портов к тому же адресу прослушивания.

Я не думаю, что большинство программ пытаются привязать порт, поэтому большинство других программ не должны переставать работать; затронуты будут только те программы, которые должны использовать уже привязанный порт -, , то есть любая программа, пытающаяся использовать сокет IP.

Cloudflare предлагает патч, который позволяет программам BPF прослушивать любой порт и позволяет программе BPF эффективно отображать список на всех портах; см. патч и это предстоящее выступление на LPC .

3
27.01.2020, 23:30

Теги

Похожие вопросы