On Sun, Jun 08, 2014 at 11:25:53AM +0100, Mick wrote: > On Sunday 08 Jun 2014 10:25:40 Matti Nykyri wrote: > > Hi > > > > I also have other problems in my life. One of them is on one of my gentoo > > server. This server has two network cards one serves intranet and the > > other internet. The on that is on the internet is attached to a cable > > modem. The modem is buggy and some times reboots it self losing the link > > so I have ifplugd there get new address via dhcp immediately. Intranet > > card is configured not to use ifplugd. I'm using OpenRC. > > Are you sure of this? How have you configured your intranet card to not be > acted upon by ifplugd? From what I see, ifplugd will pick up any interface > in > /etc/init.d: > > EXEC="/etc/init.d/net.$1"
Actually it's not ifplugd's fault. It is just the one that restarts services...
The restarting is the thing that breaks stuff:
--------------------------------------------
server% [13:44] /var/log$ sudo iptables -v -L -t nat
Chain POSTROUTING (policy ACCEPT 10142 packets, 743K bytes)
pkts bytes target prot opt in out source destination
8307 616K MASQUERADE all -- any enp0s10 anywhere anywhere
server% [13:45] /var/log$ sudo /etc/init.d/net.enp0s10 stop
* Stopping NIS Server ... [ ok ]
* samba -> stop: smbd ... [ ok ]
* samba -> stop: nmbd ...
* start-stop-daemon: 2 process(es) refused to stop [ !! ]
* Unmounting network filesystems ... [ ok ]
* Stopping chrooted named ...
* Umounting chroot dirs ...
* umounting /chroot/dns/usr/share/GeoIP ... [ ok ]
* umounting /chroot/dns/etc/bind ... [ ok ]
* umounting /chroot/dns/var/log/named ... [ ok ]
* umounting /chroot/dns/var/bind ... [ ok ]
* Stopping dhcpd ... [ ok ]
* Bringing down interface enp0s10
* Stopping dhclient on enp0s10 ... [ ok ]
* Stopping ifplugd on enp0s10 ... [ ok ]
server% [13:45] /var/log$ sudo iptables -v -L -t nat
Chain POSTROUTING (policy ACCEPT 10147 packets, 743K bytes)
pkts bytes target prot opt in out source destination
8309 617K MASQUERADE all -- any enp0s10 anywhere anywhere
server% [13:45] /var/log$ sudo /etc/init.d/net.enp0s10 start
* Bringing up interface enp0s10
* Changing MAC address of enp0s10 ... [ ok ]
* changed to 00:80:23:7A:8A:A4
* Starting ifplugd on enp0s10 ... [ ok ]
* Backgrounding ...
* WARNING: net.enp0s10 has started, but is inactive
server% [13:45] /var/log$ sudo iptables -v -L -t nat
Chain POSTROUTING (policy ACCEPT 10147 packets, 743K bytes)
pkts bytes target prot opt in out source destination
8309 617K MASQUERADE all -- any enp0s10 anywhere anywhere
--------------------------------------------
It takes around 40 seconds for dhclient to address from ISP
(net-misc/dhcp-4.2.5_p1)
After it gets the address iptables is changed:
--------------------------------------------
server% [13:45] /var/log$ sudo iptables -v -L -t nat
Chain POSTROUTING (policy ACCEPT 2 packets, 152 bytes)
pkts bytes target prot opt in out source destination
0 0 MASQUERADE all -- any eth1 anywhere anywhere
server% [13:48] /var/log$ ps aux | grep dhclient
root 22011 0.0 0.2 16200 7108 ? Ss 13:46 0:00 /sbin/dhclient
-e PEER_NTP=no -e IF_METRIC=3 -q -1 -pf /var/run/dhclient-enp0s10.pid enp0s10
server% [13:48] /var/log$ ls /etc/init.d/net*
lrwxrwxrwx 1 root root 6 Oct 4 2011 /etc/init.d/net.enp0s10 -> net.lo*
lrwxrwxrwx 1 root root 6 Oct 4 2011 /etc/init.d/net.enp5s12 -> net.lo*
-rwxr-xr-x 1 root root 17412 Jan 2 23:42 /etc/init.d/net.lo*
--------------------------------------------
> > The problems are related to iptables and samba.
> >
> > Samba: when ifplugd runs down the internet card samba is killed. This
> > shouldn't happen. Samba is configured only to use intranet card. Samba
> > always fails to start when ifplugd starts the internet card. Manual
> > starting is required.
> >
> > Iptables: the system uses new nic names (enp7s0 etc). Iptables has them
> > correctly in the rules and in rules save. However when ifplugd cycles the
> > internet nic all the nic names in the in-kernel rules change to eth0 an
> > eth1. I need to zap iptables and then start it to reset the rules.
>
> This does not happen here. When ifplugd restarts a NIC it always comes back
> with the new consistent naming. Do you have some udev rules defined which
> are
> picked up on the second time that the ifplugd brings up the card, but not the
> first?
No I don't. And as stated when dhclient sets the address that is the point
when the names change.
> > Any suggestions where to start? Or just disable ifplugd?
>
> Have you tried configuring static IP addresses, broadcast and gateways for
> each card using the /etc/cong.d/net file? You can still set dhcp as a fall
> back if you want, although I am not sure it is necessary for a server in a
> static LAN.
lol. Yeap... I had an old rules set file that was set to run in
postup()-function. Quite embarrassing :/ I don't know how I missed this...
modules_enp5s12="!plug"
modules_enp0s10="dhclient"
So enp5s12 is static and enp0s10 is dynamic with plug and dhcp.
> The file /usr/share/doc/netifrc-0.2.2/net.example.bz2 provides suggestions
> for
> different set ups.
In the past there was option in the rc.conf to say that eth1 is sufficient for
net. I don't wan't any services shutdown if anything drives down the enp0s10
NIC. Is there a way to do that with OpenRC? As you see when I stop enp0s10 all
the services that serve intranet are driven down...
--
-Matti
signature.asc
Description: Digital signature

