awk -v test="$(awk '{print $1+0}' A.txt)" '{ if ($1 > test && $2 < test) {print test,$3} }' B.txt
Что вы можете сделать, так это скомпрометировать :включить IPv6, но запретить его эффективное использование где бы то ни было.
Загрузитесь с включенным IPv6, но отключите его на будущих и текущих интерфейсах, используя sysctl -w...
с указанными ниже параметрами или добавив эти параметры в /etc/sysctl.conf
//etc/sysctl.d
:
net.ipv6.conf.default.disable_ipv6=1
net.ipv6.conf.all.disable_ipv6=1
При этом использование IPv6 фактически отключено, в то время как API сокетов IPv6 остается включенным. Таким образом, приложение по-прежнему может привязываться к ::
и получать IPv4, также связанный с ним в режиме двойного стека (, это по умолчанию, согласно RFC 3493).
Вы можете рассмотреть исключения и проблемы, связанные с ::1 в интерфейсе lo , в зависимости от конфигурации и поведения приложений. Среди множества вариантов:
удалить из /etc/hosts
запись, которая выглядела бы так:
::1 localhost ip6-localhost ip6-loopback
или не отключайте IPv6 на lo(после предыдущих настроек ), чтобы получить ::1:
net.ipv6.conf.lo.disable_ipv6=0
Если вы решили оставить запись в /etc/hosts
, подумайте о том, чтобы дать приоритет 127.0.0.1 над ::1, или в любом случае просто IPv4 над IPv6, добавив в/etc/gai.conf
:
precedence ::ffff:127.0.0.1/128 100
или:
precedence ::ffff:0:0/96 100
Предупреждение :Некоторые инструменты настройки сети (, такие как NetworkManager ), будут сбрасывать переключатель disable_ipv6
на свои собственные настройки и, следовательно, должны быть явно настроены для отключения IPv6 на сконфигурированном интерфейсе.
Альтернативный метод :, если он слишком громоздкий, чтобы быть приемлемым,вот альтернативный метод отключения IPv6 (на ядрах с CONFIG_IP_ADVANCED_ROUTER
, все ядра основных дистрибутивов делают ).
Запретить правила маршрутизации IPv6 использовать таблицы маршрутизации, заменив правило предпочтения 0 правилом blackhole , делающим любой поиск маршрута IPv6 невозможным (можно просто удалить все правила, включая предпочтение 32766, чтобы получить Network is unreachable
вместоInvalid argument
):
ip -6 rule delete preference 0
ip -6 rule add preference 0 blackhole
Даже без каких-либо других настроек на любом интерфейсе:
$ ping ::1
ping: connect: Invalid argument
ping ff05::2
ping: connect: Invalid argument
При прослушивании IPv6 по-прежнему выполняется успешно (и по умолчанию используется двойной стек в соответствии с RFC):
$ socat tcp6-listen:4242 /dev/null &
[1] 430541
$ ss -tnle sport == 4242
State Recv-Q Send-Q Local Address:Port Peer Address:Port
LISTEN 0 5 *:4242 *:* uid:1000 ino:5971821 sk:1106 v6only:0 <->
Он по-прежнему может получать трафик IPv4 в режиме двойного стека, поскольку маршруты IPv4 остаются беспрепятственными.