Автор Тема: как в современных линуксах из консоли без перезагрузки изменить сетевые настройки  (Прочитано 2318 раз)

Оффлайн zhe

  • Завсегдатай
  • *
  • Сообщений: 88
Доброго дня, уважаемые форумчане. Объясните мне заядлому sysV, как в современных линуксах из консоли без перезагрузки (и графики!) изменить сетевые настройки? Дело в том, что классическая схема - меняешь конфиги, /etc/init.d/network restart теперь не работает, ifup/ifdown тоже нет, ifconfig up . . это уже мастадонт.. 
Чем сильнее systemd захватывает линукс, тем больше граблей в пингвине становится (ИМХО). Раньше таким недугом страдали CentOS, debian, ubuntu, теперь заразился и Альт  8-|

Какой командой теперь, изменив конфиги /etc/net/.. поменять настройки сети в консольном режиме?
Спасибо, заранее извиняюсь за ламерство.

я за SysV !!!  8-)
man google.com

Оффлайн asy

  • alt linux team
  • ***
  • Сообщений: 8 102
во-первых, network restart вполне работает с /etc/net. Во-вторых, если вообще независимо от всего, то "man ip" или "ip help". Даже есть "ip addr change ...". Ну и, в третьих, ifup/ifdown никуда не делись:

$ rpm -qf /sbin/ifdown
etcnet-0.9.10-alt18.M80P.3

Оффлайн zhe

  • Завсегдатай
  • *
  • Сообщений: 88
во-первых, network restart вполне работает с /etc/net. Во-вторых, если вообще независимо от всего, то "man ip" или "ip help". Даже есть "ip addr change ...". Ну и, в третьих, ifup/ifdown никуда не делись:

$ rpm -qf /sbin/ifdown
etcnet-0.9.10-alt18.M80P.3

согласен, ifup/ifdown никуда не делись, но они даже не останавливают интерфейс, он по-прежнему в UP (когда смотришь через ip a) и с тем же адресом, та же ерунда с /etc/init.d/network restart, в том то и дело
вот, пример, прям сейчас поменял адрес в конфиге с 56 на 55, перезапустил сеть /etc/init.d/network restart,
но ничего не поменялось:

cat /etc/net/ifaces/ens32/ipv4address
192.168.69.55/24

 ip a
...

2: ens32: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
    link/ether 00:50:56:99:de:7f brd ff:ff:ff:ff:ff:ff
    inet 192.168.69.56/24 brd 192.168.69.255 scope global ens32
       valid_lft forever preferred_lft forever
    inet6 fe80::250:56ff:fe99:de7f/64 scope link
       valid_lft forever preferred_lft forever

такая же фигня в других дистрах, но там другие файлы
« Последнее редактирование: 01.02.2018 12:14:50 от zhe »
man google.com

Оффлайн zhe

  • Завсегдатай
  • *
  • Сообщений: 88
во-первых, network restart вполне работает с /etc/net. Во-вторых, если вообще независимо от всего, то "man ip" или "ip help". Даже есть "ip addr change ...". Ну и, в третьих, ifup/ifdown никуда не делись:

$ rpm -qf /sbin/ifdown
etcnet-0.9.10-alt18.M80P.3

Сижу на сервере под ssh -ом:
ifdown ens32
ip a
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
    inet6 ::1/128 scope host
       valid_lft forever preferred_lft forever
2: ens32: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
    link/ether 00:50:56:99:de:7f brd ff:ff:ff:ff:ff:ff
    inet 192.168.69.56/24 brd 192.168.69.255 scope global ens32
       valid_lft forever preferred_lft forever
    inet6 fe80::250:56ff:fe99:de7f/64 scope link
       valid_lft forever preferred_lft forever


даже соединение не рвется   :-o
man google.com

Оффлайн zhe

  • Завсегдатай
  • *
  • Сообщений: 88
во-первых, network restart вполне работает с /etc/net. Во-вторых, если вообще независимо от всего, то "man ip" или "ip help". Даже есть "ip addr change ...". Ну и, в третьих, ifup/ifdown никуда не делись:

$ rpm -qf /sbin/ifdown
etcnet-0.9.10-alt18.M80P.3

хы..

ip addr change 192.168.69.55/24 dev ens32
[root@comp-xeon-cpu-99de7f sources.list.d]# ip a
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
    inet6 ::1/128 scope host
       valid_lft forever preferred_lft forever
2: ens32: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
    link/ether 00:50:56:99:de:7f brd ff:ff:ff:ff:ff:ff
    inet 192.168.69.56/24 brd 192.168.69.255 scope global ens32
       valid_lft forever preferred_lft forever
    inet 192.168.69.55/24 scope global secondary ens32
       valid_lft forever preferred_lft forever
    inet6 fe80::250:56ff:fe99:de7f/64 scope link
       valid_lft forever preferred_lft forever

и только после можно удалить старый адрес:
ip del ..

ну это же какой-то мрак, куча команд, вместо одной, и конфиг получается полностью игнорируется,
прям как ifconfig add .. на фрибсд, возвращаемся в каменный век ?
« Последнее редактирование: 01.02.2018 12:10:24 от zhe »
man google.com

Оффлайн zhe

  • Завсегдатай
  • *
  • Сообщений: 88
во-первых, network restart вполне работает с /etc/net. Во-вторых, если вообще независимо от всего, то "man ip" или "ip help". Даже есть "ip addr change ...". Ну и, в третьих, ifup/ifdown никуда не делись:

$ rpm -qf /sbin/ifdown
etcnet-0.9.10-alt18.M80P.3

хы..

ip addr change 192.168.69.55/24 dev ens32
[root@comp-xeon-cpu-99de7f sources.list.d]# ip a
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
    inet6 ::1/128 scope host
       valid_lft forever preferred_lft forever
2: ens32: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
    link/ether 00:50:56:99:de:7f brd ff:ff:ff:ff:ff:ff
    inet 192.168.69.56/24 brd 192.168.69.255 scope global ens32
       valid_lft forever preferred_lft forever
    inet 192.168.69.55/24 scope global secondary ens32
       valid_lft forever preferred_lft forever
    inet6 fe80::250:56ff:fe99:de7f/64 scope link
       valid_lft forever preferred_lft forever

и только после можно удалить старый адрес:
ip del ..
при этом удаляются оба адреса ..  :-o

ну это же какой-то мрак, куча команд, вместо одной, и конфиг получается полностью игнорируется,
прям как ifconfig add .. на фрибсд, возвращаемся в каменный век ?
:-o
« Последнее редактирование: 01.02.2018 12:13:07 от zhe »
man google.com

Оффлайн sirares

  • Давно тут
  • **
  • Сообщений: 194
Ответ не очень красивый(если разработчики не вынесли из системы старую подсистему сети) - прописать жестко по мас адресу интерфейс на eth0, eth1... в /etc/rc.d/rc.inet1.conf - текстовый файл настройки сети(издревле было там - сейчас udev изрядно попортил все - имена находятся где-то в rules)
перезапуск сети - /etc/rc.d/rc.inet1 - скрипт запуска
# /etc/rc.d/rc.inet1 restart
некоторое время назад так работало, хоть и считалось не современным, не красивым(не модным, но мы за модой не гонимся...)

Оффлайн asy

  • alt linux team
  • ***
  • Сообщений: 8 102
Я пока не готов ответить, что не так. У меня всё работает

2: eth1: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1504 qdisc pfifo_fast state DOWN group default qlen 1000
    link/ether cc:5d:4e:31:6f:05 brd ff:ff:ff:ff:ff:ff
    inet 192.168.88.2/24 brd 192.168.88.255 scope global eth1
       valid_lft forever preferred_lft forever
Меняю на 3, делаю:
ifdown eth1 && ifup eth1получаю:
2: eth1: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1504 qdisc pfifo_fast state DOWN group default qlen 1000
    link/ether cc:5d:4e:31:6f:05 brd ff:ff:ff:ff:ff:ff
    inet 192.168.88.3/24 brd 192.168.88.255 scope global eth1
       valid_lft forever preferred_lft forever

А что в ens32/otions ? Точно etcnet используется, а не NM ?

Оффлайн asy

  • alt linux team
  • ***
  • Сообщений: 8 102
сейчас udev изрядно попортил все - имена находятся где-то в rules
Они даже там сейчас не находятся, если не стоит udev-rule-generator-net.
/etc/rc.d/rc.inet1.conf
Я не уверен, что в ALT такое когда-либо было. Да и не нужно это - etcnet однозначно работает. Если не работает, что-то где-то не так в локальной конфигурации.
« Последнее редактирование: 01.02.2018 13:32:17 от asy »

Оффлайн zhe

  • Завсегдатай
  • *
  • Сообщений: 88
/etc/rc.d/rc.inet1.conf
Я не уверен, что в ALT такое когда-либо было. Да и не нужно это - etcnet однозначно работает. Если не работает, что-то где-то не так в локальной конфигурации.

тоже склоняюсь к тому, что дело в network managere и нужно его отключить

спасибо, что напомнили, где это отключается, сейчас попробую.

Интересно, в других дистрах это поможет. . .
man google.com

Оффлайн zhe

  • Завсегдатай
  • *
  • Сообщений: 88
спасибо, помогло.

cat /etc/net/ifaces/ens32/options
NM_CONTROLLED=no
DISABLED=no

теперь буду искать в дебианах похожую опцию
man google.com

Оффлайн asy

  • alt linux team
  • ***
  • Сообщений: 8 102
Так тоже ещё не должно работать: в файле не хватает TYPE=eth. Это можно не писать только для случая, когда eth есть в названии.

теперь буду искать в дебианах похожую опцию
Нет, это именно фича etcnet, а в Debian его не взяли.

Оффлайн zhe

  • Завсегдатай
  • *
  • Сообщений: 88
Так тоже ещё не должно работать: в файле не хватает TYPE=eth. Это можно не писать только для случая, когда eth есть в названии.

Да, есть эта опция, просто не весь файл привел в листинг
cat /etc/net/ifaces/ens32/options
NM_CONTROLLED=no
DISABLED=no
TYPE=eth
CONFIG_WIRELESS=no
BOOTPROTO=static
CONFIG_IPV4=yes

теперь буду искать в дебианах похожую опцию
Нет, это именно фича etcnet, а в Debian его не взяли.

в дебиане /etc/network/
и NM нет, однако, всё равно из консоли не работает сервис networkong
man google.com

Оффлайн zhe

  • Завсегдатай
  • *
  • Сообщений: 88
похоже назрела целая тема для исследования "Linux Systemd - перезапускаем сервисы без перезагрузки"
 ;-D

после отмены авторежима NM resolv заработал также только перезагрузки ..  :-t

PS в Дебиане, похоже помогает замена строчки allow-hotplug ens32 на auto ens32
/etc/network/intefaces
« Последнее редактирование: 01.02.2018 16:20:52 от zhe »
man google.com

Оффлайн asy

  • alt linux team
  • ***
  • Сообщений: 8 102
после отмены авторежима NM resolv заработал также только перезагрузки ..  :-t
Это тоже фича ALT. Системный резолвер работает в chroot, потому правка /etc/resolv.conf приведёт к эффекту только после запуска update_chrooted all (точнее conf достаточно), что, в числе прочего, скопирует /etc/resolv.conf в /var/resolv/etc/ (или можно руками там поправить). update_chrooted, так же, запускается в момент загрузки. Я бы ещё и resolv.conf посоветовал положить в /etc/net/ifaces/ens32/. Собственно, там и должно быть так написано:

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