[Решено]Ошибка при старте профилей netcfg

Привет всем!
Сегодня обновлялся и пришлось использовать netcfg. Есть 3 профиля, в которых просто описаны 3 статических интерфейса: lan, crp, wan. Ничего особенного там нет, только: INTERFACE, ADDR, NETMASK (и 3 маршрута в одном профиле), примерно так выглядят:
CONNECTION='ethernet'
INTERFACE='eth0'
IP='static'
ADDR='192.168.2.2'
NETMASK='255.255.255.0'
И вроде все нормально, при старте профили подхватываются и стартуют, но я наблюдаю по ошибке на каждый профиль, это:
error: "net.ipv6.conf.lan.accept_ra" is an unknown key
error: "net.ipv6.conf.crp.accept_ra" is an unknown key
error: "net.ipv6.conf.wan.accept_ra" is an unknown key
Жить оно вроде не мешает, потому что интерфейсы получают все свои ipv4 настройки правильно и работают. Но откуда это? Сейчас уже дома, на работе не успел посмотреть что за ключ такой в этих файлах. Первая мысль была - отключить ipv6 полностью, но решит ли это проблему.. кто сталкивался, подскажите как решается.. Вроде и работает, но и глаза мозолит. А может просто вывод подавить? =)

И честно говоря так и не понял как можно полностью отключить ipv6, пробовал по нагугленным советам, но оно что-то не отключилось. Хотя вот уже дома только что попробовал добавить в sysclt
#disable ipv6
net.ipv6.conf.all.disable_ipv6=1
затем sysctl -p и ifconfig показал отсутствие ipv6 адреса на карточках. Надо будет попробовать, вдруг и сообщение исчезнет.

ps: проверил, просто внести в /etc/sysctl.conf вышеприведенную запись - ipv6 все равно будет на интерфейсах, видимо что-то еще нужно отключать.. или в /etc/rc.local вписать sysctl -p

pps: Отключил таки ipv6:
[[email protected] ~]# cat /etc/modprobe.d/modprobe.conf 
blacklist ipv6
install ipv6 /bin/false
Теперь при загрузке его нет, даже sysctl -a говорит, что нет.. но netcfg все равно ругается на неверный ключ, дома точно так же как и на работе..
Кажется нашел что-то по теме, итак вот прогресс:
[[email protected] ~]# /etc/rc.d/net-profiles restart
:: lanStatic down                                                                    [DONE] 
:: lanStatic up                                                                         [BUSY] 
error: "net.ipv6.conf.eth0.accept_ra" is an unknown key                       [DONE] 
[[email protected] ~]# nano /etc/sysctl.conf 
[[email protected] ~]# modprobe ipv6
FATAL: Error running install command for ipv6
[[email protected] ~]# nano /etc/modprobe.d/modprobe.conf 
[[email protected] ~]# modprobe ipv6
[[email protected] ~]# sysctl -p
net.ipv4.ip_forward = 0
kernel.sysrq = 0
net.ipv4.tcp_syncookies = 1
net.ipv6.conf.default.accept_ra = 0
[[email protected] ~]# /etc/rc.d/net-profiles restart
:: lanStatic down                       [DONE] 
:: lanStatic up   [DONE]

То есть нужно добавить в sysctl.conf строку: net.ipv6.conf.default.accept_ra = 0 (интересно можно ли при этом еще и отключить ipv6 и чтобы netcfg не ругнулся).

Вот тут написано про этот параметр в самом конце: https://wiki.archlinux.org/index.php/IPv6 Только я так и не понял что значит эта фраза:
If you want to ignore router advertisements completely (net.ipv6.conf.default.accept_ra=0 in /etc/sysctl.conf), or simply if your router doesn't send any

Еще немного покопался, это как то связано с автоматической конфигурацией.. ну да ладно, ставлю Решено. =)
В общем все равно рисует при старте такую же ошибку, но работает, остается плюнуть на это дело. =) Все равно в 99% случаев я не вижу этих сообщений при запуске, у него даже монитора то нет. :D
Привет камрад, столкнулся с аналогичной проблемой. по традиции сразу залез внутрь netcfg и посмотрел, что вызвает ошибку :)
Все начинается отсюда (/usr/lib/network/connections/ethernet):
case "$IP6" in
    dhcp*)
    ...
        ;;
    stateless)
    ...
        ;;
    static)
    ...
        ;;
    ""|no)
        sysctl -q -w net.ipv6.conf.$INTERFACE.accept_ra=0
        ;;
    *)
        report_iproute "IP6 must be 'dhcp', 'dhcp-noaddr', 'stateless', 'static' or 'no'"
        ;;
    esac
т.к. IP6 в твоем профиле не задан, то netcfg выполняет кейз “”|no где пытается отключить фичу ipv6 router advertisements.

Проблема же в том, что модуль ipv6 не подгружен в ведро и настройки с ключем net.ipv6.conf.${INTERFACE}.accept_ra не существует (вот похожий случай http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=507788 ).

По сути это бага. Надо зарепртить мейнтейнерам netcfg - пусть добавят 2>/dev/null. Но мне лень им писать :(

Есть два вариант решения:
1) Включить ipv6 добавив его в модули rc.conf: MODULES=(… ipv6 …)
2) Пропатчить /usr/lib/network/connections/ethernet перенаправив выход ошибок в девнул
По второму пункту я не прав, все-таки. Там лучше перед case-in сделать проверку на наличие ipv6 модуля (например, if ). Пожалуй, стоит об этом написать разрабам.
А я уж на это дело плюнул совсем.. такая ошибка у меня проявлялась на двух машинах + на форуме, думаю, что и репорт писать нет надобности, разработчики уже в курсе должно быть. Тоже хотел поковырять откуда о ошибки ноги растут, но лень и неграмотность в этом деле. Я в скриптах вообще не силен. =) Но спасибо за интересные наблюдения, надо там пошариться =)
gard
репорт писать нет надобности, разработчики уже в курсе должно быть.
Ага! Точно! :-)
Присоединяемся к голосованию:
https://bugs.archlinux.org/task/25530
Пофиксили, можно закрывать :-)
 
Зарегистрироваться или войдите чтобы оставить сообщение.