Приключилось мне сегодня впервые задействовать утилиту tcpdump. Освоил азы работы с этой программкой, а также на практике пощупал структуры Ethernet-фреймов, а также IP и CARP пакетов.
Хочу сказать, что утилита tcpdump и сама по себе способна выдавать некоторые сведения о сетевых пакетах, в том числе и о протоколе CARP, к примеру в такой форме:
# tcpdump -env -c1 -v -i em1 proto carp tcpdump: listening on em1, link-type EN10MB (Ethernet), capture size 96 bytes 17:38:42.373244 00:00:5e:00:01:74 > 01:00:5e:48:2c:59, ethertype IPv4 (0x0800), length 70: (tos 0x10, ttl 255, id 9851, offset 0, flags [DF], proto VRRP (112), length 56) 83.246.222.22 > 224.0.0.18: VRRPv2, Advertisement, vrid 116, prio 240, authtype none, intvl 1s, length 36, addrs(7): 42.157.168.200,246.209.52.106,174.160.114.135, 223.166.101.125,126.225.201.162,16.217.148.103,149.149.240.151
Однако хотелось мне поближе пощупать, как она работает, и как вообще получаются эти значения.
Итак, я запустил чудесную утилиту tcpdump и вот что мне она выдала:
# tcpdump -w - -c1 -i em1 proto carp | hd 00000000 d4 c3 b2 a1 02 00 04 00 00 00 00 00 00 00 00 00 |................| 00000010 60 00 00 00 01 00 00 00 a4 dc 8a 4d 6b 7c 01 00 |................| 00000020 46 00 00 00 46 00 00 00 01 00 5e 48 2c 59 00 00 |................| 00000030 5e 00 01 75 08 00 45 10 00 38 0a 5f 40 00 ff 70 |................| 00000040 11 b1 53 f6 de 16 e0 00 00 12 21 75 f0 07 00 01 |................| 00000050 7b bf dc 7f 68 a2 11 a9 78 cb e4 76 75 f4 73 2b |................| 00000060 3d a8 3a ff e3 e9 85 0a da 9d 4a 83 ce d7 |..............| 0000006e
Чтобы показать HEX-дамп входных данных, начиная со смещения, к примеру 40, нужно воспользоваться ключиком -s:
# tcpdump -w - -c1 -i em1 proto carp | hd -s 40
Потратив несколько часов на гугление и собирание инфы по крупицам, я пришел к следующей таблице. В ней явно можно видеть уровни модели OSI, и их вложенность – Ethernet-кадр (канальный уровень), в нем IP-пакет (сетевой), в нем CARP-пакет (сложно сказать, какой уровень, но инкапсулируется в IP).
Более подробную информацию по каждому типу заголовка можно узнать, щелкнув по соответствующей ссылке в таблице.
Байты | Описание | Значение в данном случае |
d4 c3 b2 a1 | magic number утилиты tcpdump, определяет очередность байт | little-endian |
02 00 | major version number | 2 |
04 00 | minor version number | 4 |
00 00 00 00 | unused time zone offset | не используется |
00 00 00 00 | unused time stamp accuracy | не используется |
60 00 00 00 | max length of the saved data in packets (capture length), задается параметром tcpdump -s | значение по умолчанию 96 байт (0x60h) |
01 00 00 00 | link-layer type of packets | 1 – Ethernet |
a4 dc 8a 4d | date packet arrived (unixtime) | Thu, 24 Mar 2011 05:54:44 GMT |
6b 7c 01 00 | microseconds packet arrived | 97387 мкс |
46 00 00 00 | number of bytes of data in that file | 70 байт – последует после этого заголовка |
46 00 00 00 | total number of bytes, должно быть больше или равно предыдущего значения | 70 байт |
01 00 5e 48 2c 59 | destination mac | 01:00:5E:48:2C:59 |
00 00 5e 00 01 75 | source mac | 00:00:5E:00:01:75 |
08 00 | EtherType, тип инкапсулируемого протокола | 0x08h – IP |
45 | номер версии; длина заголовка | IPv4 и длина 5 |
10 | Type of Service, ToS | 10 |
00 38 | общая длина IP-пакета | 0x38h = 56 байт |
0a 5f | идентификатор пакета IP | 24330 |
40 00 | флаги протокола ip | |
ff 70 | TTL, номер протокола | TTL 255, proto 122 = vrrp/carp |
11 b1 | контрольная сумма ip-пакета | 0x11B1h |
53 f6 de 16 | source ip | 83.246.222.22 |
e0 00 00 12 | destination ip | 224.0.0.18 |
21 | версия протокола, тип пакета | версия 2 1 – Advertisement |
75 f0 | vrid (или vhid); priority (или advskew) | vhid=117; advskew=240 |
07 | количество IP-адресов, содержащихся в данном adv | 7 ip-адресов |
00 | AuthType | 0=No Authentication |
01 | advbase, интервал синхронизации | 1 секунда |
7b bf dc 7f | Откуда взялись эти IP-адреса, для меня до сих пор остается загадкой. | |
68 a2 11 a9 | ||
78 cb e4 76 | ||
75 f4 73 2b | ||
3d a8 3a ff | ||
e3 e9 85 0a | ||
da 9d 4a 83 | ||
ce d7 | Ethernet CRC | 0xCED7h |
http://sydneycbdrepair.educationalimpactblog.com/20605811/veterinary-cbd-supplier-no-further-a-mystery
Has anyone ever tried FRZN by BLVK Unicorn E-Juice Vaping ejuice?
what best cbd to take in the morning
Can someone recommend Sexy Secretary Outfits? Thanks xx
Has anyone shopped at Down on Main Street Vape Shop Vape Store in 10408 Silverdale Way Suite A103?
Has anyone ever been to Vapesoul Inc Vape Shop in 610 State Ave?
what does cbd e juice do