On Wed, Feb 09, 2011 at 07:39:59PM +0200, Valentin Nechayev writes:
Программистам в любом случае правильнее работать с struct in_addr, а как оно там внутри устроено (как длинное целое или как массив), ему не должно быть интересно.
VN> Угу, только раньше было дико удобно делать что-то вроде VN> printf("%08x\n", ntohl(sia.sin_addr.s_addr)) VN> а так придётся полагаться на тяжёлые функции конверсии к VN> "каноническому виду". inet_ntoa() не тяжелее, чем printf(). Ну и более кошерный вариант - inet_ntop(). Ты, наверное, в курсе. :) А вообще, конечно, было бы удобно, если бы в printf() добавили формат для вывода ip-адреса. VN>>> И ещё в моих наездах претензией (второй основной) было то, что ради VN>>> перехода на v6 не подогнали апдейт остальной сетевой организации.
Совершенно согласен. Если уж делать новую версию с нуля, надо было много чего поправить - ведь есть что. А вместо этого сделали что-то странное (обязательный ipsec, flow labels, размер пакетов до 4G - кому всё это надо?).
VN> IPSec не обязателен. Не хочешь - не делай. В вики пишут, что в IPv4 его поддержка опциональна, в IPv6 - обязательна. И в русской, и в английской. Рыться в rfc, чтобы понять, что имеется ввиду, сейчас лениво. VN> Про пакеты до 4G я что-то не понял. Согласно RFC2460, payload length VN> - 16 бит. Максимальный размер пакета - 65575 байт (40 на заголовок и VN> 65535 на payload). Да, на 40 больше, чем в v4, ну и только. See rfc2675.
Не понимаю, откуда могут появиться v6-only ресурсы, пока есть хотя бы 10% v4-only пользователей. Ресурс ведь не захочет их лишаться.
VN> А если новый ресурс и ему v4 адреса просто не досталось? Будет искать, где купить. Представь себя на месте админа или владельца такого ресурса - как бы ты поступил? -- Паша.