0

Let's say my rPi is functioning properly and has a working Ethernet connection; it has a local IP and I can connect to it.

I disconnect the rPi's Ethernet cable because I need it for another device and then when I put it back into the rPi, it doesn't receive a local IP and in order to do so, I've to restart the rPi with the Ethernet cable already attached to it.

My question is, is there a configuration setting somewhere on Raspbian to make the rPi auto-connect with the router once the Ethernet cable is attached? I did some research but couldn't find anything related.

Model

Raspberry Pi Model 3B v1.2

uname -a

Linux rPi 4.19.66-v7+ #1253 SMP Thu Aug 15 11:49:46 BST 2019 armv7l GNU/Linux

Raspbian Version

Buster

/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

# Example static IP configuration:
#interface eth0
#static ip_address=192.168.0.10/24
#static ip6_address=fd51:42f8:caae:d92e::ff/64
#static routers=192.168.0.1
#static domain_name_servers=192.168.0.1 8.8.8.8 fd51:42f8:caae:d92e::1

# It is possible to fall back to a static IP if DHCP fails:
# define static profile
#profile static_eth0
#static ip_address=192.168.1.23/24
#static routers=192.168.1.1
#static domain_name_servers=192.168.1.1

# fallback to static profile on eth0
#interface eth0
#fallback static_eth0

interface eth0
    static ip_address=192.168.178.134/24
    static routers=192.168.178.1
    static domain_name_servers=127.0.0.1
  • Without knowing your network settings this Question is unanswerable – Milliways Oct 2 at 9:33
  • I noticed similar things in Windows and Rpi. Eg, when booting Rpi3, real time clock gets network updated only after minutes. Same for Windows, some services have time lag after reboot. At first I got upset, but then I became considerate to the poor OSes, who are very busy, during boot time. Of course we can loop continuously every second (or install a cable disconnection watchdog timer) and reconnect or reboot in case there is a disconnection. I am a lazy linux newbie and know nothing about dhcpcd. So I won't complain. Actually Rpi3's time lag problem disappears in Rpi4. – tlfong01 Oct 2 at 9:48
  • What OS (version, release and kernel version) are you running? – Dougie Oct 2 at 13:23
  • Sorry, my bad. Normally, I provide detailed information but just slipped my mind. So, here are some and I would be willing to provide more. – Can Sürmeli Oct 3 at 8:11
  • What is the difference between your network setup and a default dhcpcd setup? – Ingo Oct 3 at 10:59
1

I have just tested it with a fresh flashed Raspbian Buster Lite on a Raspberry Pi 4B but cannot confirm your problem. I checked with ip addr and it works out of the box. Every time when I attach the ethernet cord the wired interface gets an ip address from the DHCP server. So you should check your network setup. Compare it with the default setup with dhcpcd that you find on an unmodified Raspbian installation. Sorry, but more can't be said with the information you have given about your setup.

0

Ok, I solved the problem.

I added the statement allow-hotplug eth0 to the file /etc/network/interfaces.

I still don't know why this happened. Maybe it was my configuration mistake or something I installed misconfigured something but now, everything works as expected.

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.