SuSE 12.2 Network Unreachable --> Realtek drivers installed!

I built a machine and installed 12.2 on it, and cannot get the wired network to work. It’s plugged directly into the router (which works in Windows 7).

It is a Realtek RTL8168 Ethernet on-board card for my Gigabyte 970A-UD3 motherboard. SuSE had what appeared to be some driver loaded from installation, but it wasn’t working so I decided that I needed to get the driver for this specific card from the website, which I picked up here: Realtek

After downloading and compiling (which kernel headers and GNU Make installed), I get a successful ‘completed’. Then I can check if it’s installed using:

lsmod | grep r8168

ifconfig -a

Which both show that the driver is loaded. Then I go into Yast and set my Ethernet controller to use DHCP, no firewall, and traditional settings. Then if I do ifconfig -a I get:

#eth0 Link encap: Ethernet HWaddr 94:DE:80:0B:A2:D8

inet6 addr: fe80::96de::80ff::fe0b::a2d8/64 Scope:Link

#lo Link encap: Local Loopback

inet addr: 127.0.0.1 Mask:255.0.0.0

inet6 addr: ::1/128 Scope: Host

I truncated some of the ends of each block of text above.

Doing a

#route

gives me:

#Kernel IP routing table
#Destination Gateway Genmask Flags Metric Ref Use Iface
#loopback * 255.0.0.0 U 0 0 0 lo

There is nothing (no nameservers) in my /etc/resolv.conf

I’m not really sure what nameservers are or how to find out what mine are. I know that if I’m on my windows machine I can configure my router by going to 192.168.0.1 in my browser.

It looks to me like I don’t have an ip addres (ifconfig output), and I can set that to some random ip (192.168.0.1 for example) with

#ifconfig eth0 “blah.blah.blah.blah”

But I can’t see that it does anything for me.

I also tried putting

nameserver 192.168.0.1

in my /etc/resolv.conf

But that didn’t help. I also tried manually put my gateway to 192.168.0.1 using:

route add default gw 192.168.0.1

But again, no traffic.

If I

ping -c 3 8.8.8.8

I get

network is unreachable

If I set my ip to 192.169.2.0 and ping that ip, then it pings fine, as expected.

Any help is appreciated :\

On Tue, 22 Jan 2013 04:26:05 +0000, lotus360 wrote:

> #ifconfig eth0 “blah.blah.blah.blah”
>
> But I can’t see that it does anything for me.

What specifically did you enter and how did you check what it did?

You can try:

dhcpcd eth0

And see if that grabs and IP address from your router (assuming your
router does DHCP for you - you say things work in Windows on the same
machine, so I’m assuming that’s how it’s set up).

Jim

Jim Henderson
openSUSE Forums Administrator
Forum Use Terms & Conditions at http://tinyurl.com/openSUSE-T-C

What specifically did you enter and how did you check what it did?

I tried two different IP addresses: 1) The ip address I would put in my browser in windows to configured my router: 192.168.0.1 2) I also tried a ‘random’ ip address: 192.169.2.0

So I entered

ifconfig eth0 192.168.0.1

and no connection, but I could ping that exact address and get normal pinging (return times, etc) results:

ping -c 3 192.168.0.1

Then I could do the exact same steps with ‘192.169.2.0’, and still saw no change.

A few questions:

  1. How do I find out what IP address I should have? Or do I just choose one, as long as it’s not the same as any other machine on my network, correct?

  2. What should my ‘default gateway’ ip address be set to?

  3. What should my nameservers be? (set in my /etc/resolv.conf)

  4. Is the IP address of my router just the same IP address I would put in my browser in windows to configure it? (192.168.0.1)

You can try:

dhcpcd eth0

And see if that grabs and IP address from your router (assuming your
router does DHCP for you - you say things work in Windows on the same
machine, so I’m assuming that’s how it’s set up).

I briefly tried this this morning, and I don’t have the exact output, but it was something like:

err: dhcpcd already running.\CODE]

Thanks in advance.

On Tue, 22 Jan 2013 15:56:01 +0000, lotus360 wrote:

>> What specifically did you enter and how did you check what it did?
>
> I tried two different IP addresses: 1) The ip address I would put in my
> browser in windows to configured my router: 192.168.0.1 2) I also tried
> a ‘random’ ip address: 192.169.2.0

Neither of those addresses would work as a local address on the machine.

The address you enter in your browser to configure your router is your /
router’s/ address. So by configuring that, you had two devices with the
same address.

192.169.2.0 is the address of the subnet, which is invalid for a device
address. That won’t work either.

> Code:
> --------------------
> ifconfig eth0 192.168.0.1
> --------------------

You didn’t bring the interface up, which is why you didn’t get a
connection - but as that’s the address of your router as well, it
wouldn’t have worked anyways because the address was already in use.

> and no connection, but I could ping that exact address and get normal
> pinging (return times, etc) results:
>
>
> Code:
> --------------------
> ping -c 3 192.168.0.1
> --------------------

You would get a response even with the interface down, because it’s a
local address.

> Then I could do the exact same steps with ‘192.169.2.0’, and still saw
> no change.

For the reasons I explained above, this address won’t work either. The
ping probably still would work but it /should/ IIRC respond from all
addresses on the subnet. However, your subnet mask will be
255.255.255.0, so in addition to the address not working, it wouldn’t be
routable because it’s a separate subnet from the one your router is on.

> A few questions:
>
> 1) How do I find out what IP address I should have? Or do I just choose
> one, as long as it’s not the same as any other machine on my network,
> correct?

Use the dhcpcd command I posted in my last post.

> 2) What should my ‘default gateway’ ip address be set to?

Your router, 192.168.0.1. If you use the dhcp client, it’ll set this for
you.

> 3) What should my nameservers be? (set in my /etc/resolv.conf)

Your router - but again, the dhcpcd command will take care of this for
you.

> 4) Is the IP address of my router just the same IP address I would put
> in my browser in windows to configure it? (192.168.0.1)

Yes. But that address is different than the address you assign to the
local machine, as I explained above.

>
>
>> You can try:
>>
>> dhcpcd eth0
>>
>> And see if that grabs and IP address from your router (assuming your
>> router does DHCP for you - you say things work in Windows on the same
>> machine, so I’m assuming that’s how it’s set up).
>
> I briefly tried this this morning, and I don’t have the exact output,
> but it was something like:
>
>
> Code:
> --------------------
> err: dhcpcd already running.\CODE]
>
> Thanks in advance.

Then the interface should have an address already.

What is the output of:

ifconfig eth0

Without making any changes at all?

Jim


Jim Henderson
openSUSE Forums Administrator
Forum Use Terms & Conditions at http://tinyurl.com/openSUSE-T-C

What is the output of:

ifconfig eth0

Without making any changes at all?

My output is:


eth0         Link encap: Ethernet   HWaddr 94:DE:80:0B:A2:D8
             inet6 addr:   fe80::96de::80ff::fe0b:a2d8/64  Scope:Link
             UP BROADCAST RUNNING MULTICAST  MTU: 1500  Metric: 1
             RX packets: 383 errors:0 dropped:0  overruns:0  frame:0
             TX packets:0  errors:0  dropped:0  overruns:0  carrier:0
             collisions:0  txqueuelen:1000
             RX bytes:41760 (40.7 kb)   TX byte:0 (0.0 b)
             Interrupt:74 Base address:0xe000


If I run this on my PC, I can see I have an IP address, but you do not have one. Either you don’t have a DHCP server on your local network and/or you need to assign an IP address manually. Sometimes I see a network card is not found during install, but found after a reboot, the card may not be set for DHCP. From KDE I can Run YaST / Network Devices / Network Settings / Overview Tab, the network card there should not say Not Configured and if it does, you need to select the card and the edit button and make sure DHCP is selected if you have a local router in your network.

james@linux-c100:~> /sbin/ifconfig eth0
eth0      Link encap:Ethernet  HWaddr 10:BF:48:B8:40:E1  
**          inet addr:192.168.0.191  Bcast:192.168.0.255  Mask:255.255.255.0**
          inet6 addr: fe80::12bf:48ff:feb8:40e1/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:4751 errors:0 dropped:0 overruns:0 frame:0
          TX packets:4037 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:3035522 (2.8 Mb)  TX bytes:761583 (743.7 Kb)

Thank You,

My card was configured after installation, and I installed Realtek drivers for this specific card after that just to be sure they were correct. I had to install the kernel headers and compile the driver myself, then install it. If I go into Yast->Network Settings->Overview tab, I have a RTL8111/8168B PCI Express Gigabit Ethernet controller with DHCP enabled for device eth0.

I know my router has DHCP enabled because I use it both on windows on the same machine, and I can connect my Ubuntu laptop directly into it (wired, not wireless) and it is using DHCP, and works perfect.

I tried checking


ifconfig

route

cat /etc/resolv.conf

in my Ubuntu box and basically copied the nameserver (from the resolv.conf), and set the ip address to one number higher than that on my laptop.

For example, my laptop IP output for ifconfig:


 eth0      Link encap:Ethernet  HWaddr 00:26:b9:0b:83:cf            inet addr:192.168.0.2  Bcast:192.168.0.255  Mask:255.255.255.0
          inet6 addr: fe80::226:b9ff:fe0b:83cf/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:67 errors:0 dropped:0 overruns:0 frame:0
          TX packets:69 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:8879 (8.8 KB)  TX bytes:11508 (11.5 KB)
          Interrupt:17 


lo        Link encap:Local Loopback  
          inet addr:127.0.0.1  Mask:255.0.0.0
          inet6 addr: ::1/128 Scope:Host
          UP LOOPBACK RUNNING  MTU:16436  Metric:1
          RX packets:20 errors:0 dropped:0 overruns:0 frame:0
          TX packets:20 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0 
          RX bytes:1746 (1.7 KB)  TX bytes:1746 (1.7 KB)  


and if I cat /etc/resolv.conf:


nameserver 127.0.0.1

So I changed my ip address on my SUSE (problem machine) machine:


ifconfig eth0 192.168.0.3

And I set my nameserver in my resolv.conf to the same as above.

Then I had an IP showing up in my ifconfig command, but still does not work.

Also on my ubuntu machine (working) if I type ‘route’, I get:


Kernel IP routing table                                                                                                             
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface                                                       
default         192.168.0.1     0.0.0.0         UG    0      0        0 eth0                                                        
link-local      *               255.255.0.0     U     1000   0        0 eth0                                                        
192.168.0.0     *               255.255.255.0   U     1      0        0 eth0

I checked I got the same thing on my SUSE machine after doing the changes above.

STILL no connection. I am at a complete loss.

I see a lot of people saying there is a problem, but not sure what is wrong or being fixed. I found this one suggestion:

To me, the correct way to solve the problem is to edit /etc/resolv.conf and
change the nameserver entries to 8.8.8.8 and 8.8.4.4, or some other public name
server site. The ones I quote above are Google’s public servers.

I would give it a try, but I don’t understand whats going on with your IP address.

Thank You,

On 2013-01-23 03:36, lotus360 wrote:

> in my Ubuntu box and basically copied the nameserver (from the
> resolv.conf), and set the ip address to one number higher than that on
> my laptop.

Before doing that, test in the laptop that ping to that address does NOT
work, to ensure that this address is not in use.

To be correct, you should open the router management web page, and in
the dhcp config select a range of addresses for it leaving some out.
Typically the dhcp in the router has an start address and an end
address. Say it starts at 1 and ends at 200 - then you can use the
address 201 as an static address.

Then in YaST you configure that static address (192.168.0.201),
configure a DNS server (for instance, 8.8.8.8), and set the gateway to
the router address. That should be all.

> and if I cat /etc/resolv.conf:
>
>
> Code:
> --------------------
>
> nameserver 127.0.0.1
>
> --------------------

That will not work. That address is your own computer (it means
“myself”), and only works if you run your own DNS server. Use 8.8.8.8
instead (google).


Cheers / Saludos,

Carlos E. R.
(from 11.4, with Evergreen, x86_64 “Celadon” (Minas Tirith))

On Wed, 23 Jan 2013 01:56:02 +0000, lotus360 wrote:

>> What is the output of:
>>
>> ifconfig eth0
>>
>> Without making any changes at all?
>>
>>
> My output is:
>
>
> Code: --------------------
>
> eth0 Link encap: Ethernet HWaddr 94:DE:80:0B:A2:D8 inet6
> addr: fe80::96de::80ff::fe0b:a2d8/64 Scope:Link UP BROADCAST
> RUNNING MULTICAST MTU: 1500 Metric: 1 RX packets: 383 errors:0
> dropped:0 overruns:0 frame:0 TX packets:0 errors:0 dropped:0
> overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:41760
> (40.7 kb) TX byte:0 (0.0 b)
> Interrupt:74 Base address:0xe000
>
>
> --------------------

It’s not configured, then.

What about:

ifconfig -a

?

That shoudl tell us if some other interface is assigned to this card.

Jim


Jim Henderson
openSUSE Forums Administrator
Forum Use Terms & Conditions at http://tinyurl.com/openSUSE-T-C

Ok so I did all of this. I went into router configuration page from my laptop, went into DHCP settings and saw that it goes from 192.168.0.2 to 192.168.0.254. I adjusted this to from 192.168.0.2 to 192.168.0.200 (was worried about going up to 255, seems like a common number), applied and rebooted my router.

Then in Yast I set my ip to be static, and set it to 192.168.0.201. I then added a default gateway of 192.168.0.1, and gave two nameservers: 8.8.8.8 and 8.8.4.4.

Then when I type ifconfig -a, I get:


eth0      Link encap:Ethernet  HWaddr 00:26:b9:0b:83:cf  
           inet addr:192.168.0.201  Bcast:192.168.0.255  Mask:255.255.255.0
          UP BROADCAST MULTICAST  MTU:1500  Metric:1
          RX packets:294 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:79 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:67044 (65.4.0 B)  TX bytes:0 (0.0 B)
          Interrupt:17 

lo        Link encap:Local Loopback  
          inet addr:127.0.0.1  Mask:255.0.0.0
          UP LOOPBACK RUNNING  MTU:16436  Metric:1
          RX packets:279 errors:0 dropped:0 overruns:0 frame:0
          TX packets:279 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0 
          RX bytes:23348 (22.8 KB)  TX bytes:23348 (22.8 KB)


If I type route I get:



Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface                                                       
default         192.168.0.1     0.0.0.0         UG    0      0        0 eth0                                              
loopback      *               255.0.0.0     U     1000   0        0 lo
link-local       *             255.255.0.0   U   0          0     0  eth0                                                     
192.168.0.0     *               255.255.255.0   U     2      0        0 eth0

And still, No Dice. I can only ping myself (192.168.0.201), and I cannot ping the router (192.168.0.1), google nameservers (8.8.8.8), or anything else, or access anything in firefox.

Realtek RTL111E driver installed (per my GA-970-UD3 motherboard specs).

Anyone else have any ideas? :frowning:

On Thu, 24 Jan 2013 05:56:01 +0000, lotus360 wrote:

> Ok so I did all of this. I went into router configuration page from my
> laptop, went into DHCP settings and saw that it goes from 192.168.0.2 to
> 192.168.0.254. I adjusted this to from 192.168.0.2 to 192.168.0.200 (was
> worried about going up to 255, seems like a common number), applied and
> rebooted my router.

You generally can’t use x.x.x.255 (if the netmask is 255.255.255.0, you can’t) because that’s the subnet’s broadcast address.

You might want to do a little reading on IP basics. :slight_smile:

> inet addr:192.168.0.201 Bcast:192.168.0.255 Mask:255.255.255.0 UP

Good

> Kernel IP routing table
> Destination Gateway Genmask Flags Metric Ref Use Iface
> default 192.168.0.1 0.0.0.0 UG 0 0 0 eth0
> loopback * 255.0.0.0 U 1000 0 0 lo
> link-local * 255.255.0.0 U 0 0 0 eth0
> 192.168.0.0 * 255.255.255.0 U 2 0 0 eth0

…]

> And still, No Dice. I can only ping myself (192.168.0.201), and I cannot
> ping the router (192.168.0.1), google nameservers (8.8.8.8), or anything
> else, or access anything in firefox.

Your default route is set up correctly.

IIRC, you said you have Windows installed on the machine and it works with that, correct? (or with another distro). If another Linux distro, note the hwaddress (00:26:b9:0b:83:cf). Does it match ifconfig from the other Linux distro or the NIC config for Windows?

If it doesn’t, then it’s not connecting this information to the proper NIC in the machine. If it does match, then there’s something else going on, because this looks correct.

I’m also still wondering why you’re not using DHCP and letting it get the address and config from your router.

Jim


Jim Henderson
openSUSE Forums Administrator
Forum Use Terms & Conditions at http://tinyurl.com/openSUSE-T-C

Booted into Windows and confirmed that the hardware address is the same both in SuSE and Win7. While I was there, I got the DNS’s and the ip just to try, just in case. Still doesn’t work. I also went into settings for the ethernet adapter and turned off “allow windows to turn this device off” (and tried shutting down for a full minute or so) as per this thread :
SDB:Realtek 8169 driver problem - openSUSE

I’m also still wondering why you’re not using DHCP and letting it get the address and config from your router.

Also switched back to DHCP and tried that (was trying lista’s suggestions)

On Thu, 24 Jan 2013 07:06:02 +0000, lotus360 wrote:

> Also switched back to DHCP and tried that (was trying lista’s
> suggestions)

Hmmm, I was going to suggest that maybe the driver module isn’t loaded,
but if it wasn’t, you’d not be getting an eth0 device.

Going to have to give this more thought.

Jim

Jim Henderson
openSUSE Forums Administrator
Forum Use Terms & Conditions at http://tinyurl.com/openSUSE-T-C

I appreciate the thought. After work I was going to boot up using an Ubuntu live CD and see if I could get the network setup there. Hoping maybe that’ll shine some light on the situation, somehow.

At this point, the biggest problem I see is I have the driver from Realtek for this exact ethernet card installed, and showing that it’s loaded, I have DHCP setup, and I am not getting any automatic ip address. Something is keeping it from automatically assigning an IP. It works in Windows (DHCP), and I have my Ubuntu laptop using DHCP on the same router (wired, or wireless). Something with SuSE and and that ethernet card/router combo isn’t playing well with DHCP.

Pretty stumped at this point.

On Thu, 24 Jan 2013 18:36:02 +0000, lotus360 wrote:

> Hoping maybe that’ll shine some light on the situation, somehow.

That may well - something you might consider is running tcpdump and see
if you’re seeing any traffic at all.

Is it plugged into a hub or a switch? If it’s a hub, you can set up your
second machine to generate some traffic and tcpdump should see it
(switches provide port isolation so you’d just see broadcast or multicast
traffic).

Jim


Jim Henderson
openSUSE Forums Administrator
Forum Use Terms & Conditions at http://tinyurl.com/openSUSE-T-C

On 2013-01-24 19:36, lotus360 wrote:
> omething with SuSE and a

DHCP will never work there, because when you set up a static IP and
route correctly you get no connection. Your card simply does not work in
openSUSE with that driver.

Also notice this part:


RX packets:294 errors:0 dropped:0 overruns:0 frame:0
TX packets:0 errors:0 dropped:79 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:67044 (65.4.0 B)  TX bytes:0 (0.0 B)
Interrupt:17

Nothing is sent.


Cheers / Saludos,

Carlos E. R.
(from 11.4, with Evergreen, x86_64 “Celadon” (Minas Tirith))

On Thu, 24 Jan 2013 18:58:07 +0000, Carlos E. R. wrote:

> On 2013-01-24 19:36, lotus360 wrote:
>> omething with SuSE and a
>
> DHCP will never work there, because when you set up a static IP and
> route correctly you get no connection. Your card simply does not work in
> openSUSE with that driver.
>
> Also notice this part:
>
>


>   RX packets:294 errors:0 dropped:0 overruns:0 frame:0 TX packets:0
>   errors:0 dropped:79 overruns:0 carrier:0 collisions:0 txqueuelen:1000
>   RX bytes:67044 (65.4.0 B)  TX bytes:0 (0.0 B) Interrupt:17
> 

>
> Nothing is sent.

Hmmm, I hadn’t noticed that, but that’s an excellent point.

OP, same cable being used on the machine with different operating systems?

Jim


Jim Henderson
openSUSE Forums Administrator
Forum Use Terms & Conditions at http://tinyurl.com/openSUSE-T-C

Yes, same cable, only 1 port available on board, could try multiple ports on router.

I wonder if it’s something with 12.2 also, I see most people got their problems worked out by installing Realtek driver on old SuSE versions (11.2, etc).

I also just emailed Realtek directly, to see if they have any ideas/help.

On Thu, 24 Jan 2013 19:46:01 +0000, lotus360 wrote:

> hendersj;2521729 Wrote:
>>
>> Hmmm, I hadn’t noticed that, but that’s an excellent point.
>>
>> OP, same cable being used on the machine with different operating
>> systems?
>>
>>
> Yes, same cable, only 1 port available on board, could try multiple
> ports on router.

Might be worth trying a different port on the router, but if it works
with the connection to the port with another OS on the same hardware,
that’s probably not going to change anything.

> I wonder if it’s something with 12.2 also, I see most people got their
> problems worked out by installing Realtek driver on old SuSE versions
> (11.2, etc).

Possible, but it would be a pretty specific type of problem, otherwise
there’d be others having problems with other ethernet controllers (if it
were higher up the stack).

> I also just emailed Realtek directly, to see if they have any
> ideas/help.

Did Realtek provide the code for the module you built? Asking them is a
good idea, but if it’s developed externally to them, then they may not
know (then again, though, they may have an alternate solution that we’re
missing here).

Jim

Jim Henderson
openSUSE Forums Administrator
Forum Use Terms & Conditions at http://tinyurl.com/openSUSE-T-C