I have a Raspberry pi Device I want to use the (eth0) ethernet port/Cable to connect to a local network with ip range from 192.168.x.x. And i have a 4G usb dongle which connects to the internet on the eth1 interface. Dongles default Ip is sure this has anything to do with the problem) and reconfigures to the ip connecting to internet.

current setting
- eth0 ip - netmask
- eth1 ip -   netmask

The issue arises when i try to change the netmask of eth0 to to connect to the local network. once i change it, access to internet on the device stops and i am not able to ping to google.com or its ip address.

Required setting
- eth0 ip - netmask
- eth1 ip -   netmask

I searched similar issues and tried out a few steps but none of it seems to work. resolv.conf has the following IP.

cat /etc/resolv.conf 
# Generated by resolvconf

/etc/network/interfaces file is as below

cat /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

auto eth0
allow-hotplug eth0
iface eth0 inet static
# gateway

# auto eth1
# allow-hotplug eth1
#iface eth1 inet dhcp

/etc/dhcpcd.conf file is as below

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 
#controlgroup wheel

# Inform the DHCP server of our hostname for DDNS.

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

# Persist interface configuration when dhcpcd exits.

# 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=
# static ip6_address=fd51:42f8:caae:d92e::ff/64
#  static routers=
#  static domain_name_servers=

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

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

I need both the network interface to work

through eth0 i should be able to ping 192.168.x.x through eth1 i should be able to ping google.com

  • 1
    You have fiddled with several files, put nonsense settings and incompatible data in them and not specified what OS you are using. It is not even clear what you want to do See How to set up networking/WiFi which should explain or ask a clearer question.
    – Milliways
    Oct 30, 2019 at 0:28
  • 1
    I modified two files /etc/network/interfaces to have the eth0 static Ip and /etc/dhcpcd.conf to do the same setting. Everything else is commented out i dono what you mean by nonsense setting if you can be more clear. what i want to do is mentioned in the last line. Eth0 i want to connect to a local network with ips 192.168.x.x and eth1 i want to connect to the internet Oct 30, 2019 at 4:24
  • 1
    The tutorial I linked is clear and explains how to configure networking - it is impossible to be more precise without more information.. What is not clear is what you are trying to do or WHY you ignored the warning # Please note that this file is written to be used with dhcpcd # For static IP, consult /etc/dhcpcd.conf and 'man dhcpcd.conf'
    – Milliways
    Oct 30, 2019 at 6:00

1 Answer 1


There are some things mixed up. I assume you are using Raspbian. Please don't ignore the note in /etc/network/interfaces:

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

With Raspbian you have three networking systems available out of the box. First you have to decide which one to use. For further information look at Compare three available networking systems on Raspbian.

Setup old style Debian ifupdown configured with /etc/network/interfaces you should google it. There are no much examples here on this site, mostly in conjunction with partial disabled dhcpcd.

With dhcpcd you may have a look at How to set up networking/WiFi.

You have a static ip address on eth0 (netmask This address is part of the subnet so your local network must also use this subnet with 254 ip addresses ( to If you have trouble when changing the netmask to with 65533 ip addresses ( to then there is an issue with subnetting. I guess that your local network does not use the subnet with the big ip address range, but only the small one But subnetting is out of scope here. Please refer to Wikipedia - Subnetwork. For an setup example you can look at Data modem as a Router. Just replace ppp0 with eth1 in that.

  • Thanks for the answer. The issue is when i change subnet of eth0 to i am able to ping the devices in that network from raspberry pi. But simultaneously on eth1 which was pinging google.com earlier stops pinging after subnet change on eth0. why would a subnet change in eth0 affect something in eth1? Oct 30, 2019 at 20:43
  • There can't be said any reproducible because you mixed up ifupdown and dhcpcd that conflicts with each other. For example you configure eth0 in interfaces and in dhcpcd.conf. First decide what networking do you want to use and disable the other. I prefer to use systemd-networkd.
    – Ingo
    Oct 30, 2019 at 23:32
  • Hi Thanks for the respose.turned out the issue was with the DNS ip which gets set in the resolv.conf by the dongle. which is conflicting with the IP of eth0 as well. once it was manually updated to a public DNS server issue got resolved Dec 2, 2019 at 9:09
  • @DeepakKumar Please make a short answer and accept it after two days. Only accepting an answer will finish your question and it will not pop up again and again after months.
    – Ingo
    Dec 2, 2019 at 20:01

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.