пинг закоммитил, там в программе есть одна особенность, если пинговать localhost или любой адрес, где src и dest одинаковые, то почему-то не сходится sequence в принятом icmp пакете, если пинговать любой удаленный хост, такой проблему нет, кто-нибудь может пояснить, почему так происходит, я что-то не понял 24.11.14, Alex Naumov<alexander_naumov@opensuse.org> написал(а):
2014-11-24 11:43 GMT+01:00 Ivan Riabtsov <ivriabtsov@gmail.com>:
точно так же, как в случае с программой ping, надо открыть пару raw сокетов, "смастерить" tcp syn пакет, только при открытии сокета надо указывать IPPROTO_TCP и нужно привязывать сокет к определенному tcp порту, ответ распарсить так же, как ответ на пинг.
Звучит интересно конечно, но я ни разу пока не "мастерил" свои пакеты. Попробую на днях. Кстати, было бы здорово, если бы ты закомитил свой ping.
Пока же мой TCP-запрос (трехшаговый, на 12489 порт) можно найти тут: https://github.com/ru-kernelnewbies-org/Network/blob/master/sockets/TCP/nscl...