# Realtek RTL8111e cannot send any packets



## j4r3ck (Mar 21, 2014)

Welcome.

I had new FreeBSD 10.0-RELEASE installed on my new PC, just for testing. This PC have ASUS P8H61-MX R2.0 motherboard, which contains integrated NIC Realtek RTL8111e. I theoretically configured it on the FreeBSD install process. But, it can't send any packets. This NIC is shown if I type `ifconfig -a` command, but with using a trick by `ifconfig re0 -rxcsum -txcsum` it works, but if I reboot the system, I must type it again. And, if I type it to /etc/rc.conf, this trick won't work - the NIC can't send any packets.

What's the problem? Poor quality driver or TCP/IP stack problem? And, what to do if I want to use FreeBSD normally with this NIC or buy a new NIC for PCI-E x1?


----------



## SirDice (Mar 21, 2014)

Realtek tends to modify their chips regularly without changing the identifications. They're not the best cards to have anyway but they're cheap. For some reason I seem to be lucky with all my Realtek cards but I do have issues from time to time. 

How did you add the switches to rc.conf? The correct way is something like this:

```
ifconfig_re0="DHCP -rxcsum -txcsum"
```


----------



## j4r3ck (Mar 21, 2014)

@SirDice, yes, I added it to /etc/rc.conf as exactly as you given, no effects, system cannot get an IP address from DHCP server. Manual IP setting and ping to router doesn't give any effects - no answer from router, but if I ping router from Linux, it's answering.


----------



## SirDice (Mar 21, 2014)

j4r3ck said:
			
		

> Manual IP setting and ping to router doesn't give any effects - no answer from router, but if I ping router from Linux, it's answering.


If you ping the Linux box you can run tcpdump(1) there. But I'm guessing you won't see anything there either. 

What chip/revision does yours have? You can see them with `pciconf -vl | grep -A 4 re0`:

```
root@molly:~ # pciconf -vl | grep -A 4 re0
re0@pci0:2:0:0: class=0x020000 card=0xe0001458 chip=0x816810ec rev=0x06 hdr=0x00
    vendor     = 'Realtek Semiconductor Co., Ltd.'
    device     = 'RTL8111/8168B PCI Express Gigabit Ethernet controller'
    class      = network
    subclass   = ethernet
```


----------



## j4r3ck (Mar 21, 2014)

This command showed me that my NIC has 0x09 revision. I guess that FreeBSD's re(4) driver isn't supporting this revision.


----------



## SirDice (Mar 21, 2014)

It's going to require some ingenuity to get a 10.0-STABLE source on the machine but you could try that. I do see a few changes and additions to the re(4) driver after 10.0-RELEASE. Not sure if it's actually going to help though.

http://svnweb.freebsd.org/base/stable/1 ... c?view=log


----------

