Если записать вывод данных в файл
# /opt/speedtest/speedtest | tee spdt.log
то в файле не видно промежуточных значений значений.
strace -f -e ioctl,write -o log <program command line>
мне нужно запустить программу snmpwalk чтобы она коннектилась к роутеру с адреса 192.168.2.20
echo clientaddr 192.168.2.20 >> ~/.snmp/snmp.conf
Вот примеры, не понимаю логики
пишут, пакет - это разбитая на фрагменты датаграмма, т.е. когда размер датаграммы превышает допустимый для данной сети. Но как он может превышать впринципе, если тот же TCP начинает выстраивать сегмент уже на основании MTU и MSS? Те. по идее разбиваться на фрагменты нечему будет, потому что и так будет меньше допустимого для данной сети. И он никогда не будет превышать допустимый размер?
Какой все же правильный размер MTU для ethernet по стандарту? Все пишут, что 1500, но где в каком это стандарте написано?
Ethernet implementations shall support at least one of three maximum MAC Client Data field sizes defined
as follows:
a) 1500 decimal—basic frames (see 1.4.102)
b) 1504 decimal—Q-tagged frames (see 1.4.334)
c) 1982 decimal—envelope frames (see 1.4.184)
А как же тогда jumbo-кадры передаются, они типа нарушают стандарт?
У меня wireshark показывает TCP длину "Length = 1514", как такое возможно, если на роутере стоит MTU 1500?
patch -p1 --dry-run < patch
Описание говорит, что мол "функция bind нужна для привязки локального адреса к сокету".
Кхм. А зачем?
Есть комп, у компа есть адрес. Почему стек не может как-то сам привязать известный ему адрес к сокету?
определить первый и последний сегмент
получаются куски,которые мне не нужны, а нужен конечный пакет в виде TCP данных