# [solved?] missing enp4s0 and replaced with sit0

## ShanaXXII

I reinstalled gentoo and a problem I ran into was that my enp4s0 ethernet interface was gone. In place of it was sit0.

I tried running a # dhcpcd sit0 but it didn't give me network.

I research around and found out it was some ipv6to4 or something.

But I don't know how to get rid of it and how to get my eth0 or enp4s0 back. :/Last edited by ShanaXXII on Wed Sep 24, 2014 10:52 pm; edited 1 time in total

----------

## CrankyPenguin

Three questions:

What type is your card?  Are you sure that the required drivers are enabled in the kernel?

What is your udev version?  It is possible that your reinstall settled on an older udev that does not use the persistent naming.

If you have an updated udev did you disable the persistent naming in the kernel?

----------

## ShanaXXII

 *CrankyPenguin wrote:*   

> Three questions:
> 
> What type is your card?  Are you sure that the required drivers are enabled in the kernel?
> 
> What is your udev version?  It is possible that your reinstall settled on an older udev that does not use the persistent naming.
> ...

 

 - I think I have the correct driver enabled. Because I don't have network and I didn't install pciutils during installation, I can't be for sure.

But from the last time I installed it, I remembered it was a Realtek 8169 gigabyte ethernet port and I have it enabled in my kernel

 - I have sys-fs/udev-216

 - I'm not sure what I have to enable for persistent naming. Please help me with this

----------

## charles17

 *ShanaXXII wrote:*   

> But from the last time I installed it, I remembered it was a Realtek 8169 gigabyte ethernet port and I have it enabled in my kernel

  CONFIG_R8169=y  ?

You could test with 

```
$ ifconfig -a -v
```

 *ShanaXXII wrote:*   

>  - I'm not sure what I have to enable for persistent naming. Please help me with this

 Persistent naming vs. predictable naming would turn irrelevant when you moved to using pure dhcpcd instead of Gentoo net.* scripts.

https://wiki.gentoo.org/wiki/Network_management_using_DHCPCD

----------

## ShanaXXII

I booted into the livecd, chrooted and installed lspci.

I did a # lspci -k and it was using the correct driver

 and yes, I am using dhcpcd

But I still don't have an eth0/enp4s0 interface

When I do ifconfig -a -v I only have the lo: and sit0 interface

I want to know how to disable this sit0 interface and enable back my enp4s0 interface[/code]

I'm sorry for not printing actual code because I cant copy it

----------

## creaker

It's a tunnelling interface.

Check for your loaded modules with 'lsmod'. If you have ipv6 loaded - blacklist it.

If you have ipv6 options enabled in kernel - disable them all and rebuild kernel.

Added:

Check for 'sit' module in lsmod output. If you have such a module, blacklist it also.

----------

## ShanaXXII

 *creaker wrote:*   

> It's a tunnelling interface.
> 
> Check for your loaded modules with 'lsmod'. If you have ipv6 loaded - blacklist it.
> 
> If you have ipv6 options enabled in kernel - disable them all and rebuild kernel.
> ...

 

I'm using a vmlinuz with a genkernel initramfs.

When I did # lsmod It showed that I had nothing loaded.

I went into my kernel and searched ipv6. Disabled all of them and rebuilt my kernel.

Rebooted and I still have my sit0 interface. I still don't have my enp4s0 interface for ethernet :/?

----------

## creaker

It is strange enough that you have no any modules loaded... Hmm.

Can you post your .config ?

----------

## charles17

The device should have been set up by udev.  Are you having these 2 files?

```
$ cat /lib/udev/rules.d/75-net-description.rules 

# do not edit this file, it will be overwritten on update

ACTION=="remove", GOTO="net_end"

SUBSYSTEM!="net", GOTO="net_end"

IMPORT{builtin}="net_id"

SUBSYSTEMS=="usb", IMPORT{builtin}="usb_id", IMPORT{builtin}="hwdb --subsystem=usb"

SUBSYSTEMS=="usb", GOTO="net_end"

SUBSYSTEMS=="pci", ENV{ID_BUS}="pci", ENV{ID_VENDOR_ID}="$attr{vendor}", ENV{ID_MODEL_ID}="$attr{device}"

SUBSYSTEMS=="pci", IMPORT{builtin}="hwdb --subsystem=pci"

LABEL="net_end"
```

```
$ cat /lib/udev/rules.d/80-net-setup-link.rules 

# do not edit this file, it will be overwritten on update

SUBSYSTEM!="net", GOTO="net_setup_link_end"

IMPORT{builtin}="path_id"

ACTION=="move", IMPORT{db}="ID_NET_DRIVER"

ACTION!="add", GOTO="net_setup_link_end"

IMPORT{builtin}="net_setup_link"

NAME=="", ENV{ID_NET_NAME}!="", NAME="$env{ID_NET_NAME}"

LABEL="net_setup_link_end"
```

Then the device should be in /sys/class/net/

----------

## ShanaXXII

I got it fixed somehow :/

I just reinstalled gentoo again with a bit different .config and no initramfs.

I now have enp4s0 and lo as my interfaces

I did not compile my kernel with ipv6 this time.

Maybe it was because of the time I installed Gentoo?

I installed it yesterday and there were a bunch of server movements during that time. :/

----------

## Hu

No, the difference is that you configured your kernel correctly this time.

----------

