LinuxForum.Fans
Тема

[решено]dhcp на бридже в openSUSE

Автор: Cruiser78 35 сообщений 3805 просмотров
25.12.2014 22:18 · отредактировано #406945

Привет всем!

Есть некий сервер на openSUSE 13.1. Шлюз и раздатчик локальных сетевых служб. Среди них - dhcp. Потребовалось поднять на этом компьютере сетевой бридж (в перспективе - поднятие в kvm астериска). Поднимается он просто, из того же yast'а. Конфиги сделались в этой оси следующие
сам бридж:

Показать
# cat /etc/sysconfig/network/bridges/ifcfg-br0
NAME='Bridge to LAN'
BOOTPROTO='static'
BRIDGE='yes'
BRIDGE_PORTS='enp2s0'
IPADDR=192.168.30.1
NETMASK=255.255.255.0
STARTMODE='auto'
USERCONTROL='no'
ETHTOOL_OPTIONS=''
BRIDGE_AGEINGTIME='300'
BRIDGE_FORWARDDELAY='0'
BRIDGE_HELLOTIME='2'
BRIDGE_MAXAGE='20'
BRIDGE_PATHCOSTS='19'
BRIDGE_PORTPRIORITIES=
BRIDGE_PRIORITY=
BRIDGE_STP='on'

Интерфейс, на котором он сидит:

Показать
# cat /etc/sysconfig/network/bridges/ifcfg-enp2s0
NAME='Attansic Ethernet controller'
DEVICE=enp2s0
HWADDR=1C:6F:65:37:B9:7D
IPADDR='0.0.0.0'
BROADCAST=''
NETMASK=''
NETWORK=''
REMOTE_IPADDR=''
ETHTOOL_OPTIONS=''
NM_CONTROLLED=no
STARTMODE='auto'
TYPE=Ethernet
IPV4_FAILURE_FATAL=no
IPV6INIT=no
USERCONTROL='no'

Конфиги dhcp более чем тиривиальны и стандартны. Так вот, когда бриджа нет, когда сетевой адрес сидит на физическом интерфейса dhcpd без проблем поднимается и работает великолепно. Но, стоит только поднять бридж, как dhcp сваливается напрочь. В журнал пишет, что не может найти сетевой интерфейс enp2s0 для своих нужд и потому стартовать в такой конфигурации не хочет.
Я с таким интересным поведением dchpd ни разу не сталкивался.

Коллеги, как указать демону, чтобы он садился на обадресяченый полностью интерфейс br0, а не на enp2s0, который под ним живет. Да, кстати, запись IPADDR='0.0.0.0', которую поставил yast комментарил, сеть после этого рестартовал, dchpd этого не заметил совершенно. Запускаться на мосту не хочет.

Что делать?

26.12.2014 01:29 #406956

В порядке бреда: сам dhcpd перезапускался?

26.12.2014 08:01 #406963
yars написал:
В порядке бреда: сам dhcpd перезапускался?

Как сам, так и вместе с компьютером. В логах запись о том, что он не может принициализироваться на интерфейсе enp2s0. Это как раз тот физический интерфейс, на котором поднят бридж.

[console]
dhcpd: No subnet declaration for enp2s0 (no IPv4 addresses).
dhcpd: ** Ignoring requests on enp2s0. If this is not what
dhcpd: you want, please write a subnet declaration
dhcpd: in your dhcpd.conf file for the network segment
dhcpd: to which interface enp2s0 is attached. **
dhcpd:
dhcpd:
dhcpd: Not configured to listen on any interfaces!
[/console]
Излагает английским по понятному... Стоит убрать бридж, поднять нужный IP на интерфейсе - dhcpd старует без проблем.

26.12.2014 09:28 · отредактировано #406966

Cruiser78, C полпинка:

Показать
[console]diablopc:/etc/sysconfig # uname -a
Linux diablopc 3.11.10-21-default #1 SMP Mon Jul 21 15:28:46 UTC 2014 (9a9565d) i686 i686 i386 GNU/Linux
diablopc:/etc/sysconfig # ifconfig br0
br0 Link encap:Ethernet HWaddr 00:00:E8:A9:02:85
inet addr:192.168.30.1 Bcast:192.168.30.255 Mask:255.255.255.0
inet6 addr: fe80::200:e8ff:fea9:285/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:602 errors:0 dropped:0 overruns:0 frame:0
TX packets:33 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:38698 (37.7 Kb) TX bytes:9100 (8.8 Kb)

diablopc:/etc/sysconfig # systemctl status dhcpd.service
dhcpd.service - LSB: ISC DHCP 4.x Server
Loaded: loaded (/etc/init.d/dhcpd)
Active: active (running) since Пт 2014-12-26 08:23:16 EET; 52s ago
Process: 2717 ExecStart=/etc/init.d/dhcpd start (code=exited, status=0/SUCCESS)
CGroup: /system.slice/dhcpd.service
└─2887 /usr/sbin/dhcpd -4 -cf /etc/dhcpd.conf -pf /var/run/dhcpd.pid -chroot /var/lib/dhcp -lf /db/dhcpd.l...

дек 26 08:23:16 diablopc dhcpd[2884]: For info, please visit https://www.isc.org/software/dhcp/
дек 26 08:23:16 diablopc dhcpd[2884]: Not searching LDAP since ldap-server, ldap-port and ldap-base-dn were n... file
дек 26 08:23:16 diablopc dhcpd[2886]: Internet Systems Consortium DHCP Server 4.2.5-P1
дек 26 08:23:16 diablopc dhcpd[2886]: Copyright 2004-2013 Internet Systems Consortium.
дек 26 08:23:16 diablopc dhcpd[2886]: All rights reserved.
дек 26 08:23:16 diablopc dhcpd[2886]: For info, please visit https://www.isc.org/software/dhcp/
дек 26 08:23:16 diablopc dhcpd[2886]: Not searching LDAP since ldap-server, ldap-port and ldap-base-dn were n... file
дек 26 08:23:16 diablopc dhcpd[2886]: Wrote 0 leases to leases file.
дек 26 08:23:16 diablopc dhcpd[2717]: Starting ISC DHCPv4 4.x Server [chroot]..done
дек 26 08:23:16 diablopc systemd[1]: Started LSB: ISC DHCP 4.x Server.
Hint: Some lines were ellipsized, use -l to show in full.
diablopc:/etc/sysconfig #
[/console]

А что в /etc/sysconfig/dhcpd ??
А именно:

text
DHCPD_INTERFACE="br0"
26.12.2014 10:40 #406971
diablopc написал:

А что в /etc/sysconfig/dhcpd ??
А именно:
text
DHCPD_INTERFACE="br0"

Вот в жизни в него никогда не лазал (в федорах и сентосах). За ненадобностью. Само всё вязалось по дефолту. А здесь - явно интерфейс указался...
Спасибо.

26.12.2014 10:46 #406974

Cruiser78, Связался с сусей учись жить по принципу: "Если что-то не работает - разгребай Sysconfig)))"

26.12.2014 11:47 #406977
"diablopc" написал:
разгребай Sysconfig)))"

Постепенно от него отказываются.

26.12.2014 13:29 #406979
"verg" написал:
Постепенно от него отказываются.

Но до этого ещё пройдёт немало столетий релизов.

03.01.2015 22:01 #408038

При наличии двух и более интерфейсов с бриджем - проблема не решается.

03.01.2015 22:04 #408041

artb1sh, А подробнее??? А то я у себя проверял - нормально все завелось.... А у меня две карточки, как ни как))

03.01.2015 22:09 #408042

Хз, таже самая проблема, DHCPD_INTERFACE="br0 br1" прописано было сразу. Думаю задержку как прописать старта в systemd

03.01.2015 22:13 #408043

"artb1sh" написал:
DHCPD_INTERFACE="br0 br1" прописано было сразу.
А какая реакция всего этого сейчас??
03.01.2015 22:13 #408044
Показать
2015-01-03T15:40:29.979973+03:00 linux-3w78 dhcpd: Internet Systems Consortium DHCP Server 4.2.5-P1
2015-01-03T15:40:29.980911+03:00 linux-3w78 dhcpd: Copyright 2004-2013 Internet Systems Consortium.
2015-01-03T15:40:29.981598+03:00 linux-3w78 dhcpd: All rights reserved.
2015-01-03T15:40:29.982350+03:00 linux-3w78 dhcpd: For info, please visit https://www.isc.org/software/dhcp/
2015-01-03T15:40:29.995582+03:00 linux-3w78 dhcpd: Not searching LDAP since ldap-server, ldap-port and ldap-base-dn were not specified in the config file
2015-01-03T15:40:29.999438+03:00 linux-3w78 dhcpd: Internet Systems Consortium DHCP Server 4.2.5-P1
2015-01-03T15:40:30.000300+03:00 linux-3w78 dhcpd: Copyright 2004-2013 Internet Systems Consortium.
2015-01-03T15:40:30.001062+03:00 linux-3w78 dhcpd: All rights reserved.
2015-01-03T15:40:30.001762+03:00 linux-3w78 dhcpd: For info, please visit https://www.isc.org/software/dhcp/
2015-01-03T15:40:30.006677+03:00 linux-3w78 dhcpd: Not searching LDAP since ldap-server, ldap-port and ldap-base-dn were not specified in the config file
2015-01-03T15:40:30.260693+03:00 linux-3w78 dhcpd: Wrote 0 deleted host decls to leases file.
2015-01-03T15:40:30.261570+03:00 linux-3w78 dhcpd: Wrote 0 new dynamic host decls to leases file.
2015-01-03T15:40:30.263652+03:00 linux-3w78 dhcpd: Wrote 159 leases to leases file.
2015-01-03T15:40:41.334156+03:00 linux-3w78 dhcpd:
2015-01-03T15:40:43.673293+03:00 linux-3w78 dhcpd: No subnet declaration for br1 (no IPv4 addresses).
2015-01-03T15:40:43.674163+03:00 linux-3w78 dhcpd: ** Ignoring requests on br1. If this is not what
2015-01-03T15:40:43.674992+03:00 linux-3w78 dhcpd: you want, please write a subnet declaration
2015-01-03T15:40:43.675760+03:00 linux-3w78 dhcpd: in your dhcpd.conf file for the network segment
2015-01-03T15:40:43.676560+03:00 linux-3w78 dhcpd: to which interface br1 is attached. **
2015-01-03T15:40:43.677210+03:00 linux-3w78 dhcpd:
2015-01-03T15:40:43.677866+03:00 linux-3w78 dhcpd:
2015-01-03T15:40:43.678517+03:00 linux-3w78 dhcpd: No subnet declaration for br0 (no IPv4 addresses).
2015-01-03T15:40:43.679158+03:00 linux-3w78 dhcpd: ** Ignoring requests on br0. If this is not what
2015-01-03T15:40:43.679884+03:00 linux-3w78 dhcpd: you want, please write a subnet declaration
2015-01-03T15:40:43.680589+03:00 linux-3w78 dhcpd: in your dhcpd.conf file for the network segment
2015-01-03T15:40:43.681363+03:00 linux-3w78 dhcpd: to which interface br0 is attached. **
2015-01-03T15:40:43.682002+03:00 linux-3w78 dhcpd:
2015-01-03T15:40:43.682655+03:00 linux-3w78 dhcpd:
2015-01-03T15:40:43.683066+03:00 linux-3w78 dhcpd: Not configured to listen on any interfaces!
2015-01-03T15:40:43.683460+03:00 linux-3w78 dhcpd:
2015-01-03T15:40:43.683836+03:00 linux-3w78 dhcpd: If you did not get this software from [url=ftp://ftp.isc.org]ftp.isc.org[/url], please
2015-01-03T15:40:43.684278+03:00 linux-3w78 dhcpd: get the latest from [url=ftp://ftp.isc.org]ftp.isc.org[/url] and install that before
2015-01-03T15:40:43.684654+03:00 linux-3w78 dhcpd: requesting help.
2015-01-03T15:40:43.685030+03:00 linux-3w78 dhcpd:
2015-01-03T15:40:43.685446+03:00 linux-3w78 dhcpd: If you did get this software from [url=ftp://ftp.isc.org]ftp.isc.org[/url] and have not
2015-01-03T15:40:43.685726+03:00 linux-3w78 dhcpd: yet read the README, please read it before requesting help.
2015-01-03T15:40:43.685986+03:00 linux-3w78 dhcpd: If you intend to request help from the dhcp-server@isc.org
2015-01-03T15:40:43.686230+03:00 linux-3w78 dhcpd: mailing list, please read the section on the README about
2015-01-03T15:40:43.686436+03:00 linux-3w78 dhcpd: submitting bug reports and requests for help.
2015-01-03T15:40:43.686593+03:00 linux-3w78 dhcpd:
2015-01-03T15:40:43.686741+03:00 linux-3w78 dhcpd: Please do not under any circumstances send requests for
2015-01-03T15:40:43.686922+03:00 linux-3w78 dhcpd: help directly to the authors of this software - please
2015-01-03T15:40:43.687066+03:00 linux-3w78 dhcpd: send them to the appropriate mailing list as described in
2015-01-03T15:40:43.687216+03:00 linux-3w78 dhcpd: the README file.
2015-01-03T15:40:43.687476+03:00 linux-3w78 dhcpd:
2015-01-03T15:40:43.687675+03:00 linux-3w78 dhcpd: exiting.
2015-01-03T15:40:43.687853+03:00 linux-3w78 dhcpd[833]: Starting ISC DHCPv4 4.x Server
2015-01-03T15:40:43.688020+03:00 linux-3w78 dhcpd[833]: please see /var/log/rc.dhcpd.log for details ..failed
2015-01-03T15:40:43.688175+03:00 linux-3w78 systemd[1]: dhcpd.service: control process exited, code=exited status=1
2015-01-03T15:40:43.688837+03:00 linux-3w78 systemd[1]: Unit dhcpd.service entered failed state.
2015-01-03T15:41:15.557010+03:00 linux-3w78 ifup[4754]: redirecting to systemctl try-restart dhcpd.service
03.01.2015 22:16 · отредактировано #408047

Как-то вот это на мысли левые наводит...)))

"artb1sh" написал:
2015-01-03T15:40:43.673293+03:00 linux-3w78 dhcpd: No subnet declaration for br1 (no IPv4 addresses).

Покажи все конфиги DHCPD.....
А заодно и конфиги интерфейсов...

03.01.2015 22:20 #408048

Сквид тоже перестал стартовать. Грешу на systemd, какого они раньше инициализации сети стартуют?

Показать
commBind: Cannot bind socket FD 18 to 192.168.1.1:3128: (99) Cannot assign requested address
2015-01-03T15:40:50.666553+03:00 linux-3w78 squid[3508]: commBind: Cannot bind socket FD 19 to 192.168.0.1:3128: (99) Cannot assign requested address
2015-01-03T15:40:50.667179+03:00 linux-3w78 squid[3508]: HTCP Disabled.
2015-01-03T15:40:50.667783+03:00 linux-3w78 squid[3508]: commBind: Cannot bind socket FD 20 to [::1]: (99) Cannot assign requested address
2015-01-03T15:40:50.668147+03:00 linux-3w78 squid[3508]: commBind: Cannot bind socket FD 21 to [::1]: (99) Cannot assign requested address
2015-01-03T15:40:50.668506+03:00 linux-3w78 squid[3508]: ERROR: Failed to create helper child read FD: UDP[::1]
03.01.2015 22:25 #408050

/etc/sysconfig/dhcpd

Показать
cat /etc/sysconfig/dhcpd | grep DHCPD_INTERFACE
# Examples: DHCPD_INTERFACE="eth0 eth1 eth2"
# DHCPD_INTERFACE="ANY"
DHCPD_INTERFACE="br0 br1"
# all interfaces used in DHCPD_INTERFACE variable are up as well.
# all interfaces used in DHCPD_INTERFACE variable are up as well.

/etc/dhcpd.conf

Показать
cat /etc/dhcpd.conf
option domain-name "test";
option domain-name-servers 192.168.0.1, 8.8.8.8;
option routers 192.168.0.1;
option ntp-servers 192.168.0.1;
ddns-update-style none;
default-lease-time 14400;
subnet 192.168.0.0 netmask 255.255.255.0 {
option routers 192.168.0.1;
range 192.168.0.10 192.168.0.100;
default-lease-time 14400;
max-lease-time 172800;
}
subnet 192.168.1.0 netmask 255.255.255.0 {
option routers 192.168.1.1;
option subnet-mask 255.255.255.0;
range 192.168.1.10 192.168.1.100;
}
host ubuntu {
hardware ethernet 52:54:00:5f:31:c6;
fixed-address 192.168.0.9;
}
host ubuntu2 {
hardware ethernet 52:54:00:8d:64:cd;
fixed-address 192.168.1.9;
}

/etc/sysconfig/network/ifcfg-br1

Показать
cat /etc/sysconfig/network/ifcfg-br1
BOOTPROTO='static'
BRIDGE='yes'
BRIDGE_FORWARDDELAY='0'
BRIDGE_PORTS='enp3s5'
BRIDGE_STP='off'
BROADCAST=''
ETHTOOL_OPTIONS=''
IPADDR='192.168.1.1/24'
MTU=''
NETWORK=''
PREFIXLEN='24'
REMOTE_IPADDR=''
STARTMODE='auto'
USERCONTROL='no'

/etc/sysconfig/network/ifcfg-br0

Показать
cat /etc/sysconfig/network/ifcfg-br0
BOOTPROTO='static'
BRIDGE='yes'
BRIDGE_FORWARDDELAY='0'
BRIDGE_PORTS='enp2s0'
BRIDGE_STP='off'
BROADCAST=''
ETHTOOL_OPTIONS=''
IPADDR='192.168.0.1/24'
MTU=''
NETWORK=''
PREFIXLEN='24'
REMOTE_IPADDR=''
STARTMODE='auto'
USERCONTROL='no'
03.01.2015 22:27 · отредактировано #408051

ifcfg-enp2s0, ifcfg-enp3s5 - тоже

03.01.2015 22:34 #408053
"artb1sh" написал:
DHCP Server 4.2.5-P1

Обновить не желаете до 4.2.6 из репозитория network:/dhcp:
[console=root]zypper ar -f ht[span]tp://download.opensuse.org/repositories/network:/dhcp/openSUSE_13.1/[/span] network:/dhcp && zypper mr -p 98 network:/dhcp && zypper ref && zypper dup[/console]
Изменений много в том числе и улучшения, связанные с интеграцией с systemd.

03.01.2015 22:37 #408054

/etc/sysconfig/network/ifcfg-enp2s0

Показать
cat /etc/sysconfig/network/ifcfg-enp2s0
BOOTPROTO='static'
BROADCAST=''
ETHTOOL_OPTIONS=''
IPADDR='0.0.0.0/32'
MTU=''
NAME='RTL8111/8168B PCI Express Gigabit Ethernet controller'
NETMASK='255.255.255.0'
NETWORK=''
REMOTE_IPADDR=''
STARTMODE='manual'
USERCONTROL='no'
PREFIXLEN=''

/etc/sysconfig/network/ifcfg-enp3s5

Показать
cat /etc/sysconfig/network/ifcfg-enp3s5
BOOTPROTO='static'
BROADCAST=''
ETHTOOL_OPTIONS=''
IPADDR='0.0.0.0/32'
MTU=''
NAME='DGE-528T Gigabit Ethernet Adapter'
NETWORK=''
REMOTE_IPADDR=''
STARTMODE='manual'
USERCONTROL='no'
PREFIXLEN='32'
NETMASK='255.255.255.0'

manual из-за ошибки http://lists.opensuse.org/archive/opensuse-bugs/2013-12/msg02270.html
вертал в auto и всё побывал - это не влияет на старт dhcpd, вернее на его невозможность автостартануть при загрузке

03.01.2015 22:56 · отредактировано #408059
"artb1sh" написал:
IPADDR='0.0.0.0/32'
NETMASK='255.255.255.0

Как минимум это уже друг другу не соответствует....

"verg" написал:
Обновить не желаете до 4.2.6 из репозитория network:/dhcp:

Та ладно, на 4.2.5.P1 тож неплохо все заводится))

"artb1sh" написал:
STARTMODE='manual'

И вот это на мысли не наводит??

Войдите или зарегистрируйтесь, чтобы ответить.