Summary: | /etc/resolv.conf doesn't get updated without ancient magic | ||||||||
---|---|---|---|---|---|---|---|---|---|
Product: | Sisyphus | Reporter: | Michael Shigorin <mike> | ||||||
Component: | ppp-common | Assignee: | Michael Shigorin <mike> | ||||||
Status: | CLOSED FIXED | QA Contact: | qa-sisyphus | ||||||
Severity: | critical | ||||||||
Priority: | P1 | CC: | ahmedsayeed1982, asy, glebfm, hiddenman, ldv, mike, pilot, placeholder, vvk, zerg | ||||||
Version: | unstable | ||||||||
Hardware: | all | ||||||||
OS: | Linux | ||||||||
Bug Depends on: | 4249 | ||||||||
Bug Blocks: | 13000, 14014, 14167 | ||||||||
Attachments: |
|
Description
Michael Shigorin
2007-12-22 01:22:47 MSK
reassign Created attachment 2333 [details]
fix broken temp entry handling
Судя по kppp/connect.cpp, kppp-3.5.8 в /etc/resolv.conf может засовывать только
маркеры "#kppp temp entry" и "#entry disabled by kppp". Соответственно мы (в
лице ip-up) на них должны реагировать так, что кто-то уже туда слазил и нам там
делать нечего.
gnome-ppp и draknet у нас уже не осталось (в Gentoo/Ubuntu есть gnome-ppp
0.3.23) -- вторым случаем, который буду проверять, является chestnut-dialer.
Поправил ip-up.
При прозвоне chestnut-dialer пользователем в группе uucp и с симлинком
/dev/modem -> ttyS1 (где висит тестовый IDC) всё просто в порядке: маршруты
перекидываются, в DNS два первых NS заменяются на полученные; при отключении
всё возвращается на место.
При прозвоне kppp тем же пользователем (настройка "Disable existing DNS
servers" _не_ задействована) -- полученные NS добавляются в конец списка и по
существу не используются. Если включить эту галку -- получается ещё веселей:
search uafoss
nameserver 213.169.64.100
nameserver 213.169.64.101
nameserver 192.168.1.1
nameserver 213.169.64.100 #kppp temp entry
nameserver 213.169.64.101 #kppp temp entry
Короче говоря, ppp-common совершенно незачем было ломать под сломанный kppp.
Что с kppp -- буду оформлять отдельным багом.
Created attachment 2334 [details]
do update_chrooted conf even if we don't update resolv.conf ourselves
На всякий выделил кусочек про update_chrooted conf в функцию, которая
выполняется вне зависимости от наличия "temp entry". Надо бы сделать совсем
безусловно, наверное... всё равно не повредит.
(In reply to comment #2) > сломанный kppp. Где он сломан? Если текущий nameserver не закомментирован "#entry disabled by kppp", то его кто-то перезаписал после этого, но до того, как появились "#kppp temp entry" Но, kppp пропатчу немного. Он ориентируется на "domain" а не "search" при прописывании домена (In reply to comment #5) > Но, kppp пропатчу немного. Он ориентируется на "domain" а не "search" при > прописывании домена Хотя, нет. Не нужно патчить. fixed in 0.4.1-alt1, please test: http://paq.osdn.org.ua/~mike/ppp/ppp-common/ 2 zerg: надо-надо, domain давно уже объявлен устаревшей формой записи. Впрочем, по kppp пошли лучше в #13789. А про рейс -- понятно, но см. там же про append (libresolv смотрит максимум три первых nameserver AFAIR). (In reply to comment #7) > domain давно уже объявлен устаревшей формой записи. Но в man я не вижу search, зато domain вижу. Это точно то же самое? (In reply to comment #8) > > domain давно уже объявлен устаревшей формой записи. > Но в man я не вижу search, зато domain вижу. Это точно то же самое? Ой, а где у нас resolv.conf(5) водится? http://www.linuxmanpages.com/man5/resolver.5.php http://mail-index.netbsd.org/current-users/1994/12/19/0033.html search -- это надмножество domain; умеет брать несколько значений. Вот только что прописал usepeerdns, ifup ppp0. В resolv.conf прописались NS-ы. dig ya.ru работает, однако, ping ya.ru нет, похоже, конфиги резолвера не обновились. После ручного update_chrooted all запинговалось. Еще перепроверю. Ты патч https://bugzilla.altlinux.org/attachment.cgi?id=2334 модифицировал, из-за этого таки возникла проблема. Долго я искал, в чем дело, ppp почему-то exit code 0 показывал для ip-up. А дело вот в чем: /etc/ppp/ip-up /etc/ppp/ip-up: line 123: local: can only be used in a function /etc/ppp/ip-up: line 124: conf: command not found Нужно убрать local, только в функциях разрешено. Проверь http://paq.osdn.org.ua/~mike/ppp/ppp-common/ppp-common-0.4.2-alt1.noarch.rpm pls -- модем на конторе остался. (In reply to comment #12) > Проверь > http://paq.osdn.org.ua/~mike/ppp/ppp-common/ppp-common-0.4.2-alt1.noarch.rpm pls > -- модем на конторе остался. Сейчас потестирую. Укртелеком почему-то на этот адрес не пускает :-/ tracepath paq.osdn.org.ua 1: 92.113.89.47 (92.113.89.47) 1.388ms pmtu 1492 1: 195.5.5.203 (195.5.5.203) asymm 2 39.493ms 2: 195.5.5.203 (195.5.5.203) 40.344ms !N Пойду качать из другого места. Ну и чо, кидать в сизиф/бранч? (не пускает... хм, это wnet -- мож пора разбегаться?) Без local пока работает. На работу с dhcpd попаду только 8-го, чтобы точно проверить в старых условиях. Но, скорее всего, всё будет нормально. fixed in 0.4.2-alt1; каким образом будет лучше организовать взаимодействие с kppp по части (не)обновления /etc/resolv.conf -- предлагаю обсудить в #13789. |