0

So, I have my raspberry pi running Raspbian 9 configured using a static IP address for both WLAN0 and ETH0.

Both work if I boot with an ethernet-cable plugged in.

But, in certain situations, it happens that my pi should boot without a cable plugged in, or with the router not being alive yet. When this situation occurs, for some reason my raspberry pi will not connect to the network (as in: I can never reach it, be it by SSH or ping) untill I give it a reset.

I've read about an option "allow_hotplug" which sounds like the thing I need, but that doesn't work either (and I guess I shouldn't even be touching /etc/network/interfaces on Debian Stretch..)

Could anyone point me in the right direction? I really need this pi to be reachable on the network, even when the network is a bit slower in starting than the pi.

For reference:

/etc/network/interfaces:

# interfaces(5) file used by ifup(8) and ifdown(8)

# Please note that this file is written to be used with dhcpcd
# For static IP, consult /etc/dhcpcd.conf and 'man dhcpcd.conf'

# Include files from /etc/network/interfaces.d:
source-directory /etc/network/interfaces.d

auto lo
iface lo inet loopback

iface eth0 inet manual

allow-hotplug wlan0
iface wlan0 inet manual
    wpa-conf /etc/wpa_supplicant/wpa_supplicant.conf

allow-hotplug wlan1
iface wlan1 inet manual
    wpa-conf /etc/wpa_supplicant/wpa_supplicant.conf

and /etc/dhcpcd.conf:

# A sample configuration for dhcpcd.
# See dhcpcd.conf(5) for details.

# Allow users of this group to interact with dhcpcd via the control socket.
#controlgroup wheel

# Inform the DHCP server of our hostname for DDNS.
hostname

# Use the hardware address of the interface for the Client ID.
clientid
# or
# Use the same DUID + IAID as set in DHCPv6 for DHCPv4 ClientID as per RFC4361.
# Some non-RFC compliant DHCP servers do not reply with this set.
# In this case, comment out duid and enable clientid above.
#duid

# Persist interface configuration when dhcpcd exits.
persistent

# Rapid commit support.
# Safe to enable by default because it requires the equivalent option set
# on the server to actually work.
option rapid_commit

# A list of options to request from the DHCP server.
option domain_name_servers, domain_name, domain_search, host_name
option classless_static_routes
# Most distributions have NTP support.
option ntp_servers
# Respect the network MTU. This is applied to DHCP routes.
option interface_mtu

# A ServerID is required by RFC2131.
require dhcp_server_identifier

# Generate Stable Private IPv6 Addresses instead of hardware based ones
slaac private

interface wlan0
static ip_address=192.168.123.45/24
static routers=192.168.123.45
static domain_name_servers=8.8.8.8 8.8.4.4

denyinterfaces wlan0

interface eth0
static ip_address=192.168.1.199/24
static routers=192.168.1.1
static domain_name_servers=8.8.8.8 8.8.4.4
  • Your question is unclear - are you using Debian or Raspbian? Have you edited /etc/network/interfaces and if so WHY? – Milliways May 22 '18 at 12:45
  • You are right. I am using Raspbian and not Debian. I've edited my question. I did not edit /etc/network/interfaces, but rather I did edit /etc/dhcpcd.conf. I use that to have a static IP. – Michiel May 22 '18 at 13:12
1

I've found the answer myself.

Apparently ifplugd was not installed by default. When I installed that and made sure the OS does not wait for a network connection on boot, things started working when hotplugging a LAN cable.

0

If you are running Raspbian Stretch the /etc/network/interfaces file is NOT as listed; indeed the correct file does NOTHING and is unnecessary.

By modifying it you are probable running duplicate wpa_supplicantprocesses, with unknown consequences.

You DO NOT need ifplugd (or any other applications) for networking to run.

See How to set up networking/WiFi

Your static settings are on 2 different networks, and the settings seem unusual. It is unclear what you are trying to achieve.

  • So for a network cable to be hotpluggable, I do not need ifplugd? It's running headless so I don't have a choice I think. The 2 different networks is as intended, they are actually on two different networks. – Michiel May 23 '18 at 8:09
  • Why don't you just try it and see - works on my Pi, but I don't use static. I still think the settings are weird, in particular setting routers to your local IP – Milliways May 23 '18 at 8:16
  • Yea, well it didn't work until I installed ifplugd. Maybe it is because of the static IP. The WLAN0 settings are for an AP that the pi broadcasts btw. – Michiel May 23 '18 at 9:33

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.