1

I've moved house and internet provider + router, so this may be the source of the problem. My pi was working fine prior to this.

My pi (running raspian) has a static IP (on eth0), and I can ssh fine from within my network. However, I can't connect to the internet (i.e. ping google). Can someone point me to where to go from here?

Update:

pi@raspberrypi:~ $ ping 8.8.8.8
connect: Network is unreachable

pi@raspberrypi:~ $ ip r
192.168.1.0/24 dev eth0 proto dhcp scope link src 192.168.1.99 metric 202

pi@raspberrypi:~ $ cat /etc/os-release
PRETTY_NAME="Raspbian GNU/Linux 10 (buster)"
NAME="Raspbian GNU/Linux"
VERSION_ID="10"
VERSION="10 (buster)"
VERSION_CODENAME=buster

pi@raspberrypi:~ $ cat /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
# Respect the network MTU. This is applied to DHCP routes.
option interface_mtu

# Most distributions have NTP support.
#option ntp_servers

# A ServerID is required by RFC2131.
require dhcp_server_identifier

# Generate SLAAC address using the Hardware Address of the interface
#slaac hwaddr
# OR generate Stable Private IPv6 Addresses based from the DUID
slaac private

# Example static IP configuration:
interface eth0
static ip_address=192.168.1.99
interface wlan0
static ip_address=192.168.1.100
#static ip6_address=fd51:42f8:caae:d92e::ff/64
static routers=192.168.1.1
static domain_name_servers=192.168.1.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

Albatross
  • 113
  • 1
  • 5
  • Try ping 8.8.8.8 which will tell you whether the problem is routing or DNS. Try ip r to be sure the gateway the Pi is using actually points to your new router. Please edit the results from this test into your question rather than replaying as a comment. – Bob Brown Apr 02 '20 at 13:35
  • It would also help to know the version of Raspbian (things changed between Jessie and Stretch) and a copy of the /etc/dhcpcd.conf file if using Stretch and Buster (though the ip r command will give the router settings). –  Apr 02 '20 at 17:14

2 Answers2

1

You have discovered one of the drawbacks of setting a Static IP address - You need to change it each time you change networks.

If you let the router do its job and assign via DHCP it would work automatically.

I recommend restoring normal network settings - See How to set up networking/WiFi

If REALLY must set a Static IP address you need to configure it from scratch for each new router. See How to set up Static IP Address

NOTE your original dhcpcd.conf is incomplete - you have not set a gateway for Ethernet.

To set a static gateway specify like the following, but use the values derived from your network, as described in the How to set up Static IP Address link.

   interface eth0
   static ip_address=10.1.1.30/24
   static routers=10.1.1.1
   static domain_name_servers=10.1.1.1

To restore to DHCP routing just remove (or comment out) ALL interface… entries i.e. containing static etc.

Milliways
  • 59,890
  • 31
  • 101
  • 209
  • Thanks for this. Are you able to provide some extra guidance on setting this back to normal? I've tried to set things back to default - commenting out everything in /etc/dhcpcd.conf. I'm finding I can now ping 8.8.8.8but not google.com. My resolv.conf is:
    pi@raspberrypi:~ $ cat /etc/resolv.conf
    # Generated by resolvconf
    search hub
    nameserver 2405:6e00:268c:e0a8:22b0:1ff:fe9b:8ea2
    

    Also, how should I set the gateway for ethernet, if that is missing?

    Cheers

    – Albatross Apr 03 '20 at 08:55
  • Do NOT put detail in Comments, edit your Question. It appears your router is using IPv6. I can't tell you what your router settings are. – Milliways Apr 03 '20 at 10:04
0

It looks like your dhcpd.conf is just like it was delivered, so I wonder how you set that static IP.

In any case, my scientific wild guess is that your new gateway router has a different address than at your old home. If you haven't done much customization of Raspbian, just flash a new copy onto your SD card. I think it'll work.

If you have done a bunch of customizing, undo what you did to set the static address, including specifically anything that refers to a gateway address. (If you have an extra SD card, perform the first test first, just to give yourself confidence that undoing the static address will work.)

Bob Brown
  • 1,037
  • 8
  • 12
  • I have the following in the dhcpd.conf:
    interface eth0
    static ip_address=192.168.1.99
    interface wlan0
    static ip_address=192.168.1.100
    #static ip6_address=fd51:42f8:caae:d92e::ff/64
    static routers=192.168.1.1
    static domain_name_servers=192.168.1.1
    

    My new router actually has the same gateway address 192.168.1.1. I'd rather not go for the nuke and start again option. Whilst I haven't done a heap of customizing, there's still other things I've setup I'd rather not have to redo

    – Albatross Apr 03 '20 at 01:23