Использование awk Printf для печати полного числа

Адреса IPv6 имеют свою собственную систему форматирования, потому что они представляют собой 128 -битное адресное пространство :, то есть 16 октетов, что было бы чрезвычайно громоздко! Кроме того, в настоящее время существует много запусков встроенных нулей, поэтому удобно иметь возможность сжимать их. Чтобы указать, что октеты не используются, вместо точки используется двоеточие; кроме того, вместо десятичных используются шестнадцатеричные цифры.

Адрес IPv6 выглядит следующим образом:

aaaa:bbbb:cccc:dddd:eeee:ffff:gggg:hhhh[%int][/netmask]

netmaskработает так же, как IPv4, за исключением того, что он может увеличиваться до 128.

Параметр %intтребуется для адресов области , которые не являются глобальными адресами и имеют значение только внутри локальной сети, и указывает, какой сетевой интерфейс владеет адресом, поскольку два интерфейса могут иметь один и тот же адрес.

Разрешается опускать начальные нули, а единичный ряд нулей в адресе (, самом длинном, по соглашению )может быть сжат с помощью:::

2001:0db8:1523:0000:1334:0000:0000:0193
Ведущие нули удалены:2001:db8:1523:0:1334:0:0:193
Самая длинная серия сжатых нулей:2001:db8:1523:0:1334::193

Есть несколько особых случаев:

  • Любой адрес, который полностью начинается с нулей, может быть сжат до ::, тогда не-нулевая часть(0:0:0:0:0:0:0:0/128становится ::/128, а 0:0:0:0:0:0:0:1/128становится::1/128).

  • Совместимые с IPv4 -и сопоставленные с IPv4 -IPv6-адреса выглядят как ::a.b.c.d/96и::ffff:a.b.c.d/96(или::ffff:aabb:ccdd/96).

Для вашего использования /etc/hostsпочти ничего не меняется между адресами IPv4 и IPv6 :вам не придется беспокоиться о маске сети и почти наверняка не придется беспокоиться об адресах с ограниченной областью или IPv4 -совместимые адреса. Просто следуйте нулевым правилам сжатия -, и обычно все будет в порядке. Если у вас есть двойной -домашний адрес (, где хост прослушивает как IPv4, так и IPv6 ), вам придется ввести его дважды,один раз для адреса IPv4 и один раз для адреса IPv6:

::1 localhost
127.0.0.1 localhost
2001:db8:123:456::78 example.com www.example.com
192.0.2.56 example.com www.example.com
fe80::12:34:56:78%eth0 printer.example.com

Я не буду обсуждать сетевые маски и диапазоны, но если вам нужна ссылка на стандартные диапазоны, RIPE подготовила PDF-файл с ними , если вам нужен их краткий обзор.

0
07.08.2020, 02:31
1 ответ

Если вы хотите что-то конкретное, вам нужно указать формат, например,

fslstats <FILENAME> -M -V | awk '{printf "%d\n", $1 * $3 }'

или

fslstats <FILENAME> -M -V | awk '{printf "%f\n", $1 * $3 }'
0
18.03.2021, 23:14

Теги

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