Re: systemd-networkd
В 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
> Можно прописать ему (в отдельном файлике для каждого интерфейса) что > надо и что не надо от этого интерфейса требовать. > Я же прописал для 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
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
Есть система, которая имеет SSH сервер в initramfs (dropbear). Интерфейсы связаны через бондинг в bond0, на котором этот сервер работает. Роутер выдаёт бондинг интерфейсу через DHCP фиксированный IP по MAC. Когда система загружается, сервер убивается, бондинг разрушается и запускается "нормальная" сетевая подсистема, которая настраивает бондинг и поднимает OpenSSH. MAC bond0 не изменяется, IP выдаётся тот же. Когда был Stretch, не было проблем, всё работало. Обновил на Buster - всё сломалось. Выяснилось, что недавно пришедший на замену работающей подсистеме, networkd-systemd всё ломает. Если я не опускаю бондинг, его расхреначивает, и он требует IP для каждого адаптера. Когда я устанавливаю MAC вручную в его настройках (в двух местах - настройках устройства bond0 и в настройках подключения), он всё-равно устанавливает MAC на свой, и только потом на мной указанный. В результате, роутер выдаёт другой IP (к тому моменту, ещё не истёк срок действия предыдущего). Проблема решилась отключением этой замечательной штуки и переходом на предыдущую систему управления сетью. Отсюда вопросы (реально не в курсе, так что может не в тему): - Что я делаю не так? - Зачем поменяли работающее на это? - Повинен в этом Леннар или это последователи? - Что их не устраивало в resolv.conf? - Стоит ли намекнуть маинтайнерам дистрибутива на то, что это какая-то сильно непрозрачная, кривая и неочевидная в настройке херня?