ALT Linux Community general discussions
 help / color / mirror / Atom feed
* [Comm] resolvconf
@ 2015-02-26 20:07 Anton Gorlov
  2015-02-26 23:32 ` Mikhail Efremov
  0 siblings, 1 reply; 10+ messages in thread
From: Anton Gorlov @ 2015-02-26 20:07 UTC (permalink / raw)
  To: ALT Linux Community

All - а как наш resolvconf правильно готовить?


echo -n "nameserver 10.10.0.15" | /sbin/resolvconf  -a tun0

cat /etc/resolv.conf
# Generated by resolvconf
# Do not edit manually, use
# /etc/net/ifaces/<interface>/resolv.conf instead.
nameserver 127.0.0.1


127.0.0.01 -  это /etc/net/ifaces/ppp1/resolv.conf  поднимаемый при старте

tun0 это openvpn  который поднимается в ручную при необходимости и вот
пытался через vpn менять DNS

на момент вызывания resolvconf (руками) tun0 уже существует и живой


ip a l tun0
15: tun0: <POINTOPOINT,MULTICAST,NOARP,UP,LOWER_UP> mtu 1500 qdisc
fq_codel state UNKNOWN qlen 100
    link/none
    inet 10.0.10.37 peer 10.0.10.2/32 scope global tun0
       valid_lft forever preferred_lft forever


настраивать openvpn через etcnet не предлагать


^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [Comm] resolvconf
  2015-02-26 20:07 [Comm] resolvconf Anton Gorlov
@ 2015-02-26 23:32 ` Mikhail Efremov
  2015-02-27  8:31   ` Anton Gorlov
  0 siblings, 1 reply; 10+ messages in thread
From: Mikhail Efremov @ 2015-02-26 23:32 UTC (permalink / raw)
  To: ALT Linux Community general discussions

On Thu, 26 Feb 2015 23:07:23 +0300 Anton Gorlov wrote:
> All - а как наш resolvconf правильно готовить?
> 
> 
> echo -n "nameserver 10.10.0.15" | /sbin/resolvconf  -a tun0
> 
> cat /etc/resolv.conf
> # Generated by resolvconf
> # Do not edit manually, use
> # /etc/net/ifaces/<interface>/resolv.conf instead.
> nameserver 127.0.0.1
> 
> 
> 127.0.0.01 -  это /etc/net/ifaces/ppp1/resolv.conf  поднимаемый при
> старте
> 
> tun0 это openvpn  который поднимается в ручную при необходимости и вот
> пытался через vpn менять DNS
> 
> на момент вызывания resolvconf (руками) tun0 уже существует и живой
> 
> 
> ip a l tun0
> 15: tun0: <POINTOPOINT,MULTICAST,NOARP,UP,LOWER_UP> mtu 1500 qdisc
> fq_codel state UNKNOWN qlen 100
>     link/none
>     inet 10.0.10.37 peer 10.0.10.2/32 scope global tun0
>        valid_lft forever preferred_lft forever
> 
> 
> настраивать openvpn через etcnet не предлагать

Я не понял в чем, собственно, проблема. Пишется скрипт, который
будет вызываться при установке соединения (см. --up/--up-delay в
openvpn(8)). В нем вызываете resolvconf с нужными ns (возможно
приехавшими от сервера). В down скрипте удаляете с помощью resolvonf -d.
Если нужно через DNS-сервер за туннелем резолвить только определенный
домен, то удобно использовать private_interfaces (см.
resolvconf.conf(5)). Это будет работать только при наличии локального
DNS-сервера, но у вас он очевидно есть, раз в resolv.conf ns 127.0.0.1.

-- 
WBR, Mikhail Efremov


^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [Comm] resolvconf
  2015-02-26 23:32 ` Mikhail Efremov
@ 2015-02-27  8:31   ` Anton Gorlov
  2015-02-27 10:32     ` Mikhail Efremov
  0 siblings, 1 reply; 10+ messages in thread
From: Anton Gorlov @ 2015-02-27  8:31 UTC (permalink / raw)
  To: ALT Linux Community general discussions

27.02.2015 02:32, Mikhail Efremov пишет:
> Я не понял в чем, собственно, проблема. Пишется скрипт, который
> будет вызываться при установке соединения (см. --up/--up-delay в
> openvpn(8)). В нем вызываете resolvconf с нужными ns (возможно
> приехавшими от сервера). В down скрипте удаляете с помощью resolvonf -d.
> Если нужно через DNS-сервер за туннелем резолвить только определенный
> домен, то удобно использовать private_interfaces (см.
> resolvconf.conf(5)). Это будет работать только при наличии локального
> DNS-сервера, но у вас он очевидно есть, раз в resolv.conf ns 127.0.0.1.


Так в том и проблема что не работает. Начал дебажить и вот выяснилось
что не отрабатывает

echo -n "nameserver 10.10.0.15" | /sbin/resolvconf  -a tun0

И ошибок не пишет и resolv.conf  не меняет.


^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [Comm] resolvconf
  2015-02-27  8:31   ` Anton Gorlov
@ 2015-02-27 10:32     ` Mikhail Efremov
  2015-02-27 11:57       ` Anton Gorlov
  0 siblings, 1 reply; 10+ messages in thread
From: Mikhail Efremov @ 2015-02-27 10:32 UTC (permalink / raw)
  To: ALT Linux Community general discussions

On Fri, 27 Feb 2015 11:31:04 +0300 Anton Gorlov wrote:
> 27.02.2015 02:32, Mikhail Efremov пишет:
> > Я не понял в чем, собственно, проблема. Пишется скрипт, который
> > будет вызываться при установке соединения (см. --up/--up-delay в
> > openvpn(8)). В нем вызываете resolvconf с нужными ns (возможно
> > приехавшими от сервера). В down скрипте удаляете с помощью
> > resolvonf -d. Если нужно через DNS-сервер за туннелем резолвить
> > только определенный домен, то удобно использовать
> > private_interfaces (см. resolvconf.conf(5)). Это будет работать
> > только при наличии локального DNS-сервера, но у вас он очевидно
> > есть, раз в resolv.conf ns 127.0.0.1.
> 
> 
> Так в том и проблема что не работает. Начал дебажить и вот выяснилось
> что не отрабатывает
> 
> echo -n "nameserver 10.10.0.15" | /sbin/resolvconf  -a tun0
> 
> И ошибок не пишет и resolv.conf  не меняет.

И не должен при наличии локального сервера. Должны генериться конфиги
для него соответствующим subscriber-скриптом. Какой сервер используется?
Хотя можно включить добавление других ns в resolv.conf (см.
resolv_conf_local_only в resolvconf.conf(5)), конечно. Но я не вижу в
этом особого смысла при наличии кэширующего DNS-сервера.

-- 
WBR, Mikhail Efremov


^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [Comm] resolvconf
  2015-02-27 10:32     ` Mikhail Efremov
@ 2015-02-27 11:57       ` Anton Gorlov
  2015-02-27 12:11         ` Mikhail Efremov
  0 siblings, 1 reply; 10+ messages in thread
From: Anton Gorlov @ 2015-02-27 11:57 UTC (permalink / raw)
  To: ALT Linux Community general discussions

27.02.2015 13:32, Mikhail Efremov пишет:
> И не должен при наличии локального сервера. Должны генериться конфиги
> для него соответствующим subscriber-скриптом. Какой сервер используется?
> Хотя можно включить добавление других ns в resolv.conf (см.
> resolv_conf_local_only в resolvconf.conf(5)), конечно. Но я не вижу в
> этом особого смысла при наличии кэширующего DNS-сервера.

По ряду причин ме именно подменять существующий DNS в  resolv.conf надо.
Сейчас до дома доберусь поиграюсь с resolv_conf_local_only


То есть мне нужно что бы при старте сиcтемы в resolv.conf был 127.0.0.1
при поднятии tun0  что бы прописывался dns за vpn
при опускании vpn опять 127.0.0.1


^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [Comm] resolvconf
  2015-02-27 11:57       ` Anton Gorlov
@ 2015-02-27 12:11         ` Mikhail Efremov
  2015-02-27 12:44           ` Anton Gorlov
  0 siblings, 1 reply; 10+ messages in thread
From: Mikhail Efremov @ 2015-02-27 12:11 UTC (permalink / raw)
  To: ALT Linux Community general discussions

On Fri, 27 Feb 2015 14:57:04 +0300 Anton Gorlov wrote:
> 27.02.2015 13:32, Mikhail Efremov пишет:
> > И не должен при наличии локального сервера. Должны генериться
> > конфиги для него соответствующим subscriber-скриптом. Какой сервер
> > используется? Хотя можно включить добавление других ns в
> > resolv.conf (см. resolv_conf_local_only в resolvconf.conf(5)),
> > конечно. Но я не вижу в этом особого смысла при наличии кэширующего
> > DNS-сервера.
> 
> По ряду причин ме именно подменять существующий DNS в  resolv.conf
> надо. Сейчас до дома доберусь поиграюсь с resolv_conf_local_only

Если нужно именно заменять конфиги, а не мержить, то смотрите на
resolv_conf_passthrough, скорее.

-- 
WBR, Mikhail Efremov


^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [Comm] resolvconf
  2015-02-27 12:11         ` Mikhail Efremov
@ 2015-02-27 12:44           ` Anton Gorlov
  2015-02-27 15:29             ` Mikhail Efremov
  0 siblings, 1 reply; 10+ messages in thread
From: Anton Gorlov @ 2015-02-27 12:44 UTC (permalink / raw)
  To: ALT Linux Community general discussions

27.02.2015 15:11, Mikhail Efremov пишет:
> Если нужно именно заменять конфиги, а не мержить, то смотрите на
> resolv_conf_passthrough, скорее.
Выставил
resolv_conf_passthrough=YES

Сейчас в resolv.conf
nameserver 127.0.0.1


запускаю vpn и всё равно остаётся таже строка


resolv_conf=/etc/resolv.conf
interface_order='lo lo[0-9]* lo.*'
dynamic_order='tap[0-9]* tun[0-9]* vpn vpn[0-9]* ppp[0-9]* ippp[0-9]*'
resolv_conf_passthrough=YES

В openvpn тупо дёргается скрипт с
echo -n "$R" | $RESOLVCONF -a "${dev}.inet"




^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [Comm] resolvconf
  2015-02-27 12:44           ` Anton Gorlov
@ 2015-02-27 15:29             ` Mikhail Efremov
  2015-02-27 20:33               ` Anton Gorlov
  0 siblings, 1 reply; 10+ messages in thread
From: Mikhail Efremov @ 2015-02-27 15:29 UTC (permalink / raw)
  To: community

On Fri, 27 Feb 2015 15:44:01 +0300 Anton Gorlov wrote:
> 27.02.2015 15:11, Mikhail Efremov пишет:
> > Если нужно именно заменять конфиги, а не мержить, то смотрите на
> > resolv_conf_passthrough, скорее.
> Выставил
> resolv_conf_passthrough=YES
> 
> Сейчас в resolv.conf
> nameserver 127.0.0.1
> 
> 
> запускаю vpn и всё равно остаётся таже строка
> 
> 
> resolv_conf=/etc/resolv.conf
> interface_order='lo lo[0-9]* lo.*'
> dynamic_order='tap[0-9]* tun[0-9]* vpn vpn[0-9]* ppp[0-9]* ippp[0-9]*'
> resolv_conf_passthrough=YES
> 
> В openvpn тупо дёргается скрипт с
> echo -n "$R" | $RESOLVCONF -a "${dev}.inet"

Смотрите что говорит resolvconf -l
И попробуйте руками добавить для начала, скорее всего проблема уже в
самом скрипте.

P.S. -n в echo может и не мешает, но не нужен. На вход resolvconf'у
передают содержимое какого-то resolv.conf, а в конфигах newline в конце
есть.

-- 
WBR, Mikhail Efremov


^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [Comm] resolvconf
  2015-02-27 15:29             ` Mikhail Efremov
@ 2015-02-27 20:33               ` Anton Gorlov
  2015-02-28 13:09                 ` Anton Gorlov
  0 siblings, 1 reply; 10+ messages in thread
From: Anton Gorlov @ 2015-02-27 20:33 UTC (permalink / raw)
  To: ALT Linux Community general discussions

Разобрался в чём дело. Виновник openvpn

При старте vpn всё ок - прописывается сервре за vpn
а вот при опускании сначала ругался на то что не может найти /usr/bin/ip
- всё верно.  Он успешно пытался в чруте выполнить
/usr/bin/ip route del 192.168.0.0/24

Ладно - выключаю chroot

и теперь он в лог весело сообщает

Fri Feb 27 23:24:47 2015 us=623795
/etc/openvpn/scripts/update-resolv-conf tun0 1500 1542 10.0.10.37
10.0.10.2 init
rm: cannot remove 'tun0.inet': Permission denied


И как же быть?


27.02.2015 18:29, Mikhail Efremov пишет:
> On Fri, 27 Feb 2015 15:44:01 +0300 Anton Gorlov wrote:
>> 27.02.2015 15:11, Mikhail Efremov пишет:
>>> Если нужно именно заменять конфиги, а не мержить, то смотрите на
>>> resolv_conf_passthrough, скорее.
>> Выставил
>> resolv_conf_passthrough=YES
>>
>> Сейчас в resolv.conf
>> nameserver 127.0.0.1
>>
>>
>> запускаю vpn и всё равно остаётся таже строка
>>
>>
>> resolv_conf=/etc/resolv.conf
>> interface_order='lo lo[0-9]* lo.*'
>> dynamic_order='tap[0-9]* tun[0-9]* vpn vpn[0-9]* ppp[0-9]* ippp[0-9]*'
>> resolv_conf_passthrough=YES
>>
>> В openvpn тупо дёргается скрипт с
>> echo -n "$R" | $RESOLVCONF -a "${dev}.inet"
> Смотрите что говорит resolvconf -l
> И попробуйте руками добавить для начала, скорее всего проблема уже в
> самом скрипте.
>
> P.S. -n в echo может и не мешает, но не нужен. На вход resolvconf'у
> передают содержимое какого-то resolv.conf, а в конфигах newline в конце
> есть.
>



^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [Comm] resolvconf
  2015-02-27 20:33               ` Anton Gorlov
@ 2015-02-28 13:09                 ` Anton Gorlov
  0 siblings, 0 replies; 10+ messages in thread
From: Anton Gorlov @ 2015-02-28 13:09 UTC (permalink / raw)
  To: ALT Linux Community general discussions

Что в данном случае лучше - оторвать понижение привилегий юзеру openvpn
или дать sudo на resolvconf -d и забить что не может сам удалить
маршруты - они при выключении интерфейса сами пропадут?

27.02.2015 23:33, Anton Gorlov пишет:
> Разобрался в чём дело. Виновник openvpn
>
> При старте vpn всё ок - прописывается сервре за vpn
> а вот при опускании сначала ругался на то что не может найти /usr/bin/ip
> - всё верно.  Он успешно пытался в чруте выполнить
> /usr/bin/ip route del 192.168.0.0/24
>
> Ладно - выключаю chroot
>
> и теперь он в лог весело сообщает
>
> Fri Feb 27 23:24:47 2015 us=623795
> /etc/openvpn/scripts/update-resolv-conf tun0 1500 1542 10.0.10.37
> 10.0.10.2 init
> rm: cannot remove 'tun0.inet': Permission denied
>
>
> И как же быть?
>
>
> 27.02.2015 18:29, Mikhail Efremov пишет:
>> On Fri, 27 Feb 2015 15:44:01 +0300 Anton Gorlov wrote:
>>> 27.02.2015 15:11, Mikhail Efremov пишет:
>>>> Если нужно именно заменять конфиги, а не мержить, то смотрите на
>>>> resolv_conf_passthrough, скорее.
>>> Выставил
>>> resolv_conf_passthrough=YES
>>>
>>> Сейчас в resolv.conf
>>> nameserver 127.0.0.1
>>>
>>>
>>> запускаю vpn и всё равно остаётся таже строка
>>>
>>>
>>> resolv_conf=/etc/resolv.conf
>>> interface_order='lo lo[0-9]* lo.*'
>>> dynamic_order='tap[0-9]* tun[0-9]* vpn vpn[0-9]* ppp[0-9]* ippp[0-9]*'
>>> resolv_conf_passthrough=YES
>>>
>>> В openvpn тупо дёргается скрипт с
>>> echo -n "$R" | $RESOLVCONF -a "${dev}.inet"
>> Смотрите что говорит resolvconf -l
>> И попробуйте руками добавить для начала, скорее всего проблема уже в
>> самом скрипте.
>>
>> P.S. -n в echo может и не мешает, но не нужен. На вход resolvconf'у
>> передают содержимое какого-то resolv.conf, а в конфигах newline в конце
>> есть.
>>
> _______________________________________________
> community mailing list
> community@lists.altlinux.org
> https://lists.altlinux.org/mailman/listinfo/community



^ permalink raw reply	[flat|nested] 10+ messages in thread

end of thread, other threads:[~2015-02-28 13:09 UTC | newest]

Thread overview: 10+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2015-02-26 20:07 [Comm] resolvconf Anton Gorlov
2015-02-26 23:32 ` Mikhail Efremov
2015-02-27  8:31   ` Anton Gorlov
2015-02-27 10:32     ` Mikhail Efremov
2015-02-27 11:57       ` Anton Gorlov
2015-02-27 12:11         ` Mikhail Efremov
2015-02-27 12:44           ` Anton Gorlov
2015-02-27 15:29             ` Mikhail Efremov
2015-02-27 20:33               ` Anton Gorlov
2015-02-28 13:09                 ` Anton Gorlov

ALT Linux Community general discussions

This inbox may be cloned and mirrored by anyone:

	git clone --mirror http://lore.altlinux.org/community/0 community/git/0.git

	# If you have public-inbox 1.1+ installed, you may
	# initialize and index your mirror using the following commands:
	public-inbox-init -V2 community community/ http://lore.altlinux.org/community \
		mandrake-russian@linuxteam.iplabs.ru community@lists.altlinux.org community@lists.altlinux.ru community@lists.altlinux.com
	public-inbox-index community

Example config snippet for mirrors.
Newsgroup available over NNTP:
	nntp://lore.altlinux.org/org.altlinux.lists.community


AGPL code for this site: git clone https://public-inbox.org/public-inbox.git