Re: systemd-networkd

2019-07-24 Пенетрантность Victor Wagner
В Wed, 24 Jul 2019 21:20:24 +0300
artiom  пишет:

>  > Можно прописать ему (в отдельном файлике для каждого интерфейса)
>  > что надо и что не надо от этого интерфейса требовать.
>  >  
> 
> Я же прописал для bond интерфейса, по крайней мере...
> У вас MAC не прописаны, кстати.

Я ж говорю - у меня конфигурация проще. Мне не надо менять mac
интерфейсу. 
 
>  > У меня, правда, более простая конфигурация - не бондинг, а бридж
>  > (куда потом включаются tun-интерфейсы qemu-шных виртуалок и veth
>  > lxc-шных контейнеров. Зато IPv4 у него статический (потому как
>  > серый) а ipv6 - динамический (потому как globally routable).  
> 
> В том и дело: не хочу статический, хочу DHCP, но всегда одинаковый.
> 
> 
>  > ipv6 - динамический (потому как globally routable).  
> 
> Если это сервер, как жить?

Прописывать адрес статически. 

> 
> 
>  > Потому что есть компания людей, которая считает, что Debian is not
>  > about choice. И это они как-то открытым текстом в debian-devel
>  > декларировали.  
> 
> Скажите, а мне одному кажется, что здесь что-то не так?

Здесь все не так. И война за свободу ПО, которую начал Столлман в
середине 80-х - проиграна.

> Вот, например, идеологии Linux это не противоречит?

Linux это ядро. Его идеологии совершенно пофиг как в юзерспейсе
конфигурируются интерфейсы.

Вот идеологии GNU-системы, описанной Столлманом в статье Opening The
Software toolbox оно противоречит, и еще как.

Но я же говорю - битва за свободу ПО проиграна. Замена Free Software
на Open Source, которая казалась в конце 90-х замечательным тактическим
ходом, позволяющим привлечь на сторону свободы ресурсы копораций,
оказалась троянским конем. Она дала возмодность примазаться де Иказам и
Поттерингам и постепенно захватить всю экосистему.

> Debian, конечно, не Linux, однако ядро основное (а сейчас уже может и 
> единственное)...
> 
> 
>  > Увы, не поможет. Те, кто согласны с этим утверждением ушли на
>  > devuan.  
> 
> Который отстаёт на две версии от и так далеко не свежайшего Debian
> (даже с учётом бэк-портов), что особенно актуально с выходом нового 
> компилятора (ага, "компильте в Docker или на CI", но мне это иногда 
> менее удобно).

Если ты не можешь написать софт, который компилируется любым GCC начиная
с 4.6 и конччая 9.1, то ты не умеешь программировать. Если ты скачал
откуда-то такой софт, сотри немедленно. Потому что его автор не умеет
программировать, и отсутствие поддержки компилятора имеющейся у тебя
версии, скорее всего не единственная и не главная его проблема.

Но вообще, если нужен свеженький компилятор в deuvian, в чем проблема
его собрать самому в пакет (а то и мейнтейнером заделаться). Чай не
Solaris 9 где собрать gcc так, чтобы им потом можно было собрать openssl
было еще тем квестом, и требуемые для этого патчи к crt1.o почему-то
gcc-шная команда принимать отказывалась. 

Впрочем, я про Solaris еще могу страшных сказок порассказывать, как там
gcc 5.3 работает с 128-битными целыми, передаваемыми в функцию.
Помнится мы зимой в pgsql-hackers на эту тему неделю ругались, пока
наконец не написали более-менее приличный тест для configure.

Вообще, конечно, плакаться по поводу старых компиляторов в devuan,
которому без году неделя, в ответе человеку, который вынужден
поддерживать софт для RHEL 6, SLES 11sp4 и МСВС-6.3 (про эльбрусы я
вообще полмолчу)...

> в
-- 
   Victor Wagner 



Re: systemd-networkd

2019-07-24 Пенетрантность artiom

> Можно прописать ему (в отдельном файлике для каждого интерфейса) что
> надо и что не надо от этого интерфейса требовать.
>

Я же прописал для bond интерфейса, по крайней мере...
У вас MAC не прописаны, кстати.
Да и он его меняет, просто не сразу, видимо...


> У меня, правда, более простая конфигурация - не бондинг, а бридж (куда
> потом включаются tun-интерфейсы qemu-шных виртуалок и veth lxc-шных
> контейнеров. Зато IPv4 у него статический (потому как серый) а
> ipv6 - динамический (потому как globally routable).

В том и дело: не хочу статический, хочу DHCP, но всегда одинаковый.


> ipv6 - динамический (потому как globally routable).

Если это сервер, как жить?


> Потому что есть компания людей, которая считает, что Debian is not about
> choice. И это они как-то открытым текстом в debian-devel декларировали.

Скажите, а мне одному кажется, что здесь что-то не так?
Вот, например, идеологии Linux это не противоречит?
Debian, конечно, не Linux, однако ядро основное (а сейчас уже может и 
единственное)...



> Увы, не поможет. Те, кто согласны с этим утверждением ушли на devuan.

Который отстаёт на две версии от и так далеко не свежайшего Debian (даже 
с учётом бэк-портов), что особенно актуально с выходом нового 
компилятора (ага, "компильте в Docker или на CI", но мне это иногда 
менее удобно).



24.07.2019 15:03, Victor Wagner пишет:> On Wed, 24 Jul 2019 14:03:34 +0300
> Н. Артём  wrote:
>
>> Есть система, которая имеет SSH сервер в initramfs (dropbear).
>> Интерфейсы связаны через бондинг в bond0, на котором этот сервер
>> работает. Роутер выдаёт бондинг интерфейсу через DHCP фиксированный
>> IP по MAC.
>>
>> Когда система загружается, сервер убивается, бондинг разрушается и
>> запускается "нормальная" сетевая подсистема, которая настраивает
>> бондинг и поднимает OpenSSH. MAC bond0 не изменяется, IP выдаётся тот
>> же.
>>
>> Когда был Stretch, не было проблем, всё работало.
>> Обновил на Buster - всё сломалось.
>>
>> Выяснилось, что недавно пришедший на замену работающей подсистеме,
>> networkd-systemd всё ломает. Если я не опускаю бондинг, его
>> расхреначивает, и он требует IP для каждого адаптера. Когда я
>
> C этим мне все-таки удалось побороться.
>
> Можно прописать ему (в отдельном файлике для каждого интерфейса) что
> надо и что не надо от этого интерфейса требовать.
>
> У меня, правда, более простая конфигурация - не бондинг, а бридж (куда
> потом включаются tun-интерфейсы qemu-шных виртуалок и veth lxc-шных
> контейнеров. Зато IPv4 у него статический (потому как серый) а
> ipv6 - динамический (потому как globally routable).
>
> Получилось примерно так:
> ==> /etc/systemd/network/br0.netdev <==
> [NetDev]
> Name=br0
> Kind=bridge
>
>
> ==> /etc/systemd/network/br0.network <==
> [Match]
> Name=br0
> [Network]
> Address=192.168.217.1/25
> Gateway=192.168.217.63
> Broadcast=192.168.217.128
> DHCP=ipv6
> DNS=127.0.0.1
>
> ==> /etc/systemd/network/eth0.network <==
> [Match]
> Name=eth0
> [Network]
> Bridge=br0
> DHCP=no
>
> Вообще в *.network можно вписать Unmanaged=yes и
> тогда, по утверждению документации, systemd-networkd вообще не будет
> трогать этот интерфейс.
>
> И можно будет конфигурировать его через ipupdown (это же имеется в виду
> под старой подсистемой), не снося systemd-networkd.
>
> У меня, правда, сходу не получилось. Потому что я не ожидал от ini-style
> конфигурационного файла того, что пробелы вокруг знака равенства
> недопустимы.
>
>> Отсюда вопросы (реально не в курсе, так что может не в тему):
>>
>> - Что я делаю не так?
>> - Зачем поменяли работающее на это?
>> - Повинен в этом Леннар или это последователи?
>
> Потому что есть компания людей, которая считает, что Debian is not about
> choice. И это они как-то открытым текстом в debian-devel декларировали.
>
>> - Что их не устраивало в resolv.conf?
>> - Стоит ли намекнуть маинтайнерам дистрибутива на то, что это
>> какая-то сильно непрозрачная, кривая и неочевидная в настройке херня?
>
> Увы, не поможет. Те, кто согласны с этим утверждением ушли на devuan.
>
> --
>



Re: systemd-networkd

2019-07-24 Пенетрантность Victor Wagner
On Wed, 24 Jul 2019 14:03:34 +0300
Н. Артём  wrote:

> Есть система, которая имеет SSH сервер в initramfs (dropbear).
> Интерфейсы связаны через бондинг в bond0, на котором этот сервер
> работает. Роутер выдаёт бондинг интерфейсу через DHCP фиксированный
> IP по MAC.
> 
> Когда система загружается, сервер убивается, бондинг разрушается и
> запускается "нормальная" сетевая подсистема, которая настраивает
> бондинг и поднимает OpenSSH. MAC bond0 не изменяется, IP выдаётся тот
> же.
> 
> Когда был Stretch, не было проблем, всё работало.
> Обновил на Buster - всё сломалось.
> 
> Выяснилось, что недавно пришедший на замену работающей подсистеме,
> networkd-systemd всё ломает. Если я не опускаю бондинг, его
> расхреначивает, и он требует IP для каждого адаптера. Когда я

C этим мне все-таки удалось побороться.

Можно прописать ему (в отдельном файлике для каждого интерфейса) что
надо и что не надо от этого интерфейса требовать.

У меня, правда, более простая конфигурация - не бондинг, а бридж (куда
потом включаются tun-интерфейсы qemu-шных виртуалок и veth lxc-шных
контейнеров. Зато IPv4 у него статический (потому как серый) а
ipv6 - динамический (потому как globally routable).

Получилось примерно так:
==> /etc/systemd/network/br0.netdev <==
[NetDev]
Name=br0
Kind=bridge


==> /etc/systemd/network/br0.network <==
[Match]
Name=br0
[Network]
Address=192.168.217.1/25
Gateway=192.168.217.63
Broadcast=192.168.217.128
DHCP=ipv6
DNS=127.0.0.1

==> /etc/systemd/network/eth0.network <==
[Match]
Name=eth0
[Network]
Bridge=br0
DHCP=no

Вообще в *.network можно вписать Unmanaged=yes и
тогда, по утверждению документации, systemd-networkd вообще не будет
трогать этот интерфейс.

И можно будет конфигурировать его через ipupdown (это же имеется в виду
под старой подсистемой), не снося systemd-networkd.

У меня, правда, сходу не получилось. Потому что я не ожидал от ini-style
конфигурационного файла того, что пробелы вокруг знака равенства
недопустимы.

> Отсюда вопросы (реально не в курсе, так что может не в тему):
> 
> - Что я делаю не так?
> - Зачем поменяли работающее на это?
> - Повинен в этом Леннар или это последователи?

Потому что есть компания людей, которая считает, что Debian is not about
choice. И это они как-то открытым текстом в debian-devel декларировали.

> - Что их не устраивало в resolv.conf?
> - Стоит ли намекнуть маинтайнерам дистрибутива на то, что это
> какая-то сильно непрозрачная, кривая и неочевидная в настройке херня?

Увы, не поможет. Те, кто согласны с этим утверждением ушли на devuan.

--  



systemd-networkd

2019-07-24 Пенетрантность Н . Артём
Есть система, которая имеет SSH сервер в initramfs (dropbear).
Интерфейсы связаны через бондинг в bond0, на котором этот сервер работает.
Роутер выдаёт бондинг интерфейсу через DHCP фиксированный IP по MAC.

Когда система загружается, сервер убивается, бондинг разрушается и запускается 
"нормальная" сетевая подсистема,
которая настраивает бондинг и поднимает OpenSSH.
MAC bond0 не изменяется, IP выдаётся тот же.

Когда был Stretch, не было проблем, всё работало.
Обновил на Buster - всё сломалось.

Выяснилось, что недавно пришедший на замену работающей подсистеме, 
networkd-systemd всё ломает.
Если я не опускаю бондинг, его расхреначивает, и он требует IP для каждого 
адаптера.
Когда я устанавливаю MAC вручную в его настройках (в двух местах - настройках 
устройства bond0 и в настройках подключения),
он всё-равно устанавливает MAC на свой, и только потом на мной указанный.

В результате, роутер выдаёт другой IP (к тому моменту, ещё не истёк срок 
действия предыдущего).

Проблема решилась отключением этой замечательной штуки и переходом на 
предыдущую систему управления сетью.


Отсюда вопросы (реально не в курсе, так что может не в тему):

- Что я делаю не так?
- Зачем поменяли работающее на это?
- Повинен в этом Леннар или это последователи?
- Что их не устраивало в resolv.conf?
- Стоит ли намекнуть маинтайнерам дистрибутива на то, что это какая-то сильно 
непрозрачная, кривая и неочевидная в настройке херня?