|
|
|
Forum Member
      
участник
Last Login: 01.02.2008 1:10
Сообщ.: 37,
Visits: 406
|
|
| Доброе время суток! Мне необходимо в IP заголовке задать TTL. Для этого я говорю винде, что ip заголовок буду определять сам, с помощью функции: int option=1; setsockopt (s, IPPROTO_IP, IP_HDRINCL, (char *)&option, sizeof (option)); Далее устанавливаю значения в заголовок IP, в том числе и ТТL. Копирую в буфер IP заголовок+информацию которую передаю, и отправляю пакет: ret = sendto (s, buf, sizeof(buf), 0, (SOCKADDR *)&sin, sizeof (sin)); // SOKADDR_IN sin;При отправлении пакета, получаю ошибку 10004. Никак не могу понять в чём дело. Если коментарю setsockopt тут всё работает, но это естественно, так как ip заголовок теперь определяет винда. В чём может быть проблема? Или может как нибудь можно установить TTL другим способом? (например если установить TTL через setsockopt (s, IPPROTO_IP, IP_TTL, (char *)&option, sizeof (option));, где option=128; тоже не работает)
|
|
|
|