Re: [Network] Простой ICMP запрос
Alex Naumov
alexander_naumov at opensuse.org
Fri Nov 21 18:42:17 EST 2014
2014-11-21 22:20 GMT+01:00 Naydin Andrey <naydinav at gmail.com>:
> Привет Alex. Может имеет смысл создать репозиторий на github или еще где.
> Что б можно было сразу примеры-задачки сливать, собирать, вносить правки. Я
> это предлагаю в контексте
>
> Кто что думает об этом коде? Что можно улучшить?
>
> Что б можно было создавать бранчи с решениям, которые по мнению
> конкретного взятого разработчика улучшают код. И затем обсуждать.
> И всегда можно будет в переписке ссылаться на нужный коммит/ветку.
> Это только предложение. А не условие.
>
Привет.
Это отличная идея! Я сам хотел предложить. Кто возьмется?
Создайте кто-нибудь, кому не лень, мы скопируем.
>
> Анализируя пристегнутый код письму могу только пока предложить вариант
> ответа к следующему вопросу
>
> Кто-нибудь может ясно объяснить, почему для корректной работы он требует
> права root?
>
> Тут я немного схитрил, что б получить ответ.
> Рута запрашивает на
> sd = socket(AF_INET, SOCK_RAW, IPPROTO_ICMP);
>
> А стандартный системный ping - нет. Поэтому не долго думая, слил исходники
> пакета busybox (очень советую скачать всем, кто хочет в полной мере на
> примере изучать разработку системного ПО) и начал сравнивать нашей
> реализации Ping с тем что представлено в нем.
>
> Сокет создается там примерно так же. Но идет проверка, что если сокет не
> создался, то идет проверка на права доступа со следующей припиской.
> ** We don't have root privileges. Try SOCK_DGRAM instead.*
> * * Linux needs net.ipv4.ping_group_range for this to work.*
> * * MacOSX allows ICMP_ECHO, ICMP_TSTAMP or ICMP_MASKREQ*
> * */*
> Гугл по запросу
>
>
> *ping_group_range Выдал такой результат. *
>
> Socket(2) is restricted to the group range specified in
> "/proc/sys/net/ipv4/ping_group_range" (or the owner of CAP_NET_RAW). It
> is "1 0" by default, meaning that nobody except root may create ping
> sockets. Setting it to "100 100" would gain permissions to the single
> group, "0 65535" would enable it for the world.
>
>
Интересно. Я пока глубоко в этот вопрос не погружался. Думал, что это
требуют все raw-сокеты.
Но с чем связанно требование к правам root?
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.kernelnewbies.org/pipermail/kernel-russian/attachments/20141122/4b9ccb17/attachment-0001.html
More information about the Kernel-russian
mailing list