Re: ipv6 use_tempaddr
sergio <sergio@outerface.net> пишет:
> Хочу динамический IPv6 адрес.
>
> По этому поводу я написал "net.ipv6.conf.all.use_tempaddr=2" в
> "/etc/sysctl.d/ipv6_use_tempaddr.conf", перезагрузился, и на интерфейсе
> появился этот самый tempaddr.
>
> Но вдруг (видимо после обновления) он пропал. В
> "/proc/sys/net/ipv6/conf/all/use_tempaddr" "2", а адреса нет. Тогда, я в
> этот "/etc/sysctl.d/ipv6_use_tempaddr.conf" дописал
> "net.ipv6.conf.default.use_tempaddr=2", перезагрузился, в
> "/proc/sys/net/ipv6/conf/default/use_tempaddr" стало "2", но адрес не
> появился. И только когда я написал "net.ipv6.conf.eth0.use_tempaddr=2"
> адрес вернулся.
>
> 1. Почему так? И как сделать как было?
>
> 2. Кто-нибудь может внятно объяснить чем "all" отличается от "default"?
>
> Debian buster 4.19.0-6-amd64 & sid 5.2.0-3-amd64
«all» применяет настройки ко всем интерфейсам включая дефолтные,
«default» применяет настройки к будущим интерфейсам, например в случае
подключения usb-модема [1].
Думаю что у вас настройки сбиваются, потому что вы назвали файл
/etc/sysctl.d/ipv6_use_tempaddr.conf, попробуйте назвать его например
20_ipv6_use_tempaddr.conf, дабы они выполнялись первыми и не
перезаписывались настройками по умолчанию.
Так хорошо делать для сервера, но если у вас ноутбук и вы подключаетесь
к интернету в разных местах, то лучше не задавать настройки для всех
интерфейсов автоматически. В целях безопасности, надежнее будет
контролировать настройки каждого интерфейса в момент подключения и
отключения. Мне удобнее делать это через ifup/ifdown. Например мой
/etc/network/interfaces:
iface dhcp inet dhcp
pre-up /bin/ip link set $IFACE up
post-down /bin/ip link set $IFACE down
iface pump inet manual
pre-up /bin/ip link set $IFACE up
pre-up /bin/systemctl start coredns.service
pre-up /bin/echo "nameserver 127.0.0.1" > /etc/resolv.conf
up /sbin/pump -i $IFACE --no-dns --no-resolvconf --no-ntp
down /sbin/pump -i $IFACE --release
post-down /bin/systemctl stop coredns.service
post-down /bin/ip link set $IFACE down
iface pump inet6 auto
privext 2
Здесь две секции, «dhcp» если вы вдруг окажетесь во внутренней сети
компании и для доступа ко внутренним ресурсам нужно пользоваться
тамошним dns, и ручной «pump» для всего остального типа кафе (с помощью
pump получаю ip-адрес и шлюз, а dns шифрую через coredns). Обратите
внимание на inet6, это и есть динамический ipv6.
[1] https://unix.stackexchange.com/questions/130796/what-is-the-difference-between-all-and-default-in-kernel-setting
--
Коротаев Руслан
https://blog.kr.pp.ru
Reply to: