Для большинства случаев использования flock
очень важно, чтобы файл блокировки не был "очищен". В противном случае представьте такой сценарий:
В приведенном вами выводе netstat
«0.0.0.0» и «[::]» не означают «этот хост», они означают, что рассматриваемые службы прослушивают «все интерфейсы на этом хозяин". Таким образом, эти порты открыты для подключения любого хоста, включая локальный хост.
[::]
и 0.0.0.0
лучше рассматривать как «Null» из других областей вычислений. В зависимости от контекста это может означать «ничего», «не знаю», «все равно» или иногда «ошибка». Это значение действительно зависит от контекста.
IP-адреса могут использоваться для представления сети или хоста. Например, 192.168.1.1 — это хост на 192.168.1.0 /24. То, что он представляет, полностью зависит от того, что ожидало получить программное обеспечение.
When it means this host, does it mean all the network interfaces on this host, or just one specified network interface on this host?
Когда речь идет о привязанных (слушающих )сокетах, это означает «неважно», какой IP. Но это ограничено только IP-адресами текущего хоста, поэтому на практике соединения будут приниматься на любом интерфейсе, адресованном любому IP-адресу текущего хоста.