Я пытаюсь написать программу, которая достаёт информацию из pcap-файла (аналогично Wireshark).
if (ethernet->ether_type == 8)
{
printf("IPv4: src address: %s ", inet_ntoa(ip->ip_src));
printf("dest address: %s\n", inet_ntoa(ip->ip_dst));
}
Этот код работает, если тип пакета IPv4, если тип пакета отличается, inet_ntoa выводит неверные адреса.
Судя по Wireshark у меня большинство пакетов типа MPLS.
Вопрос в том, как вывести адреса source и destination для пакетов отличных от IPv4?