You are not logged in.

#1 2021-02-09 15:19:16

Jeff_WuYo
Member
Registered: 2020-12-14
Posts: 37

[SOLVED] Don't have IPv6 with wired NIC but have IPv6 with Wi-Fi

I use systemd-networkd and systemd-resolved to manage my network. With same machine (aka Dual-Boot), wired NIC and Wi-Fi both have Public and Private IPv6 address in Windows 10. But in Arch, Wi-Fi got Public and Private IPv6 address, wired NIC only got Private IPv6. Even I switch to NetworkManager, the problem still the same. How do I get both Public and Private IPv6 for wired NIC with systemd-networkd? Is there anything I missed or something I did wrong?

Here are some additional information, configs and some output.

Last edited by Jeff_WuYo (2021-02-15 14:55:32)

Offline

#2 2021-02-10 08:07:47

mmarzantowicz
Member
Registered: 2015-12-28
Posts: 32

Re: [SOLVED] Don't have IPv6 with wired NIC but have IPv6 with Wi-Fi

Your config files look somehow strange to me. First of all check if [DHCP] is valid section name. I'd go with [DHCPV4] and [DHCPV6]. Then use RouteMetric= (you have Matrix there). Finally add IPv6AcceptRA= to be sure it's enabled (it is by default).

Offline

#3 2021-02-10 15:24:00

Jeff_WuYo
Member
Registered: 2020-12-14
Posts: 37

Re: [SOLVED] Don't have IPv6 with wired NIC but have IPv6 with Wi-Fi

mmarzantowicz wrote:

First of all check if [DHCP] is valid section name.

I checked the man page, there's no [DHCP] section name, so I change my config accordingly.

mmarzantowicz wrote:

Then use RouteMetric= (you have Matrix there).

I set up the RouteMetric according to the ArchWiki page, since I do have wired and wireless adapters on the same machine. Did I misunderstand something?

mmarzantowicz wrote:

Finally add IPv6AcceptRA= to be sure it's enabled (it is by default).

I add the line to the [Network] section and restart the service, but there's nothing changed. Will it be a DNS problem?

Additional informations.

~ ➜  cat /etc/systemd/network/20-wired.network
[Match]
Name=enp4s0

[Network]
DHCP=yes
IPv6PrivacyExtensions=yes
IPv6AcceptRA=yes

[DHCPv4]
RouteMetric=10

[DHCPv6]
RouteMetric=10
UseDNS=yes

[IPv6AcceptRA]
UseDNS=yes

I disable WiFi due to the slow connection, I don't think this will cause any interference.

~ ➜  ip addr
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
    inet6 ::1/128 scope host
       valid_lft forever preferred_lft forever
2: enp4s0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP group default qlen 1000
    link/ether 24:4b:fe:xx:xx:xx brd ff:ff:ff:ff:ff:ff
    inet 192.168.1.109/24 brd 192.168.1.255 scope global dynamic enp4s0
       valid_lft 76095sec preferred_lft 76095sec
    inet6 fe80::264b:feff:fede:3b04/64 scope link
       valid_lft forever preferred_lft forever
3: wlan0: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc noqueue state DOWN group default qlen 1000
    link/ether 34:cf:f6:xx:xx:xx brd ff:ff:ff:ff:ff:ff

Offline

#4 2021-02-10 16:16:09

mmarzantowicz
Member
Registered: 2015-12-28
Posts: 32

Re: [SOLVED] Don't have IPv6 with wired NIC but have IPv6 with Wi-Fi

Config looks good now. Try one more thing. Add WithoutRA=yes under DHCPv6 for wired connection, then restart systemd-nteworkd.

Offline

#5 2021-02-10 17:18:41

Jeff_WuYo
Member
Registered: 2020-12-14
Posts: 37

Re: [SOLVED] Don't have IPv6 with wired NIC but have IPv6 with Wi-Fi

I add WithoutRA=yes under [DHCPv6] in my wired.network, but still, nothing change. Is there anyway to find out why Wi-Fi has Public IPv6 but wired NIC doesn't? I basically configure them as same parameters beside RouteMetric, but somehow they behave differently, which I don't know why.

Offline

#6 2021-02-10 20:30:16

mmarzantowicz
Member
Registered: 2015-12-28
Posts: 32

Re: [SOLVED] Don't have IPv6 with wired NIC but have IPv6 with Wi-Fi

One last thing - check you haven't disabled IPv6 on wire link https://wiki.archlinux.org/index.php/IPv6#Disable_IPv6. Maybe some scripts or leftovers you forgot about?

Offline

#7 2021-02-11 07:35:54

Jeff_WuYo
Member
Registered: 2020-12-14
Posts: 37

Re: [SOLVED] Don't have IPv6 with wired NIC but have IPv6 with Wi-Fi

mmarzantowicz wrote:

Maybe some scripts or leftovers you forgot about?

I can't recall any config I have done would cause this problem. With pure guese, will it be DNS or lts-kernel problem? Although Wi-Fi's IPv6 works as intended.

I print out some of sysctl info, it seems normal to me. After that, I create /etc/sysctl.d/40-ipv6.conf and add some lines according to this ArchWiki page. It doesn't help in anyway because according to the same wiki page, Systemd-networkd also does not honor the settings net.ipv6.conf.xxx.use_tempaddr placed in /etc/sysctl.d/40-ipv6.conf unless the option IPv6PrivacyExtensions is set with the value kernel in the .network file(s). Overall, the issue still remain.

Offline

#8 2021-02-11 13:46:19

merlock
Member
Registered: 2018-10-30
Posts: 235

Re: [SOLVED] Don't have IPv6 with wired NIC but have IPv6 with Wi-Fi

I've always had problems with IPv6 and systemd-networkd.

As a test, what happens if you disable/stop systemd-networkd and install/start dhcpcd?


Eenie meenie, chili beanie, the spirits are about to speak -- Bullwinkle J. Moose
It's a big club...and you ain't in it -- George Carlin
Registered Linux user #149839
perl -e 'print$i=pack(c5,(41*2),sqrt(7056),(unpack(c,H)-2),oct(115),10); '

Offline

#9 2021-02-12 06:57:42

Jeff_WuYo
Member
Registered: 2020-12-14
Posts: 37

Re: [SOLVED] Don't have IPv6 with wired NIC but have IPv6 with Wi-Fi

merlock wrote:

what happens if you disable/stop systemd-networkd and install/start dhcpcd?

I just tried and the problems still their, nothing seems changed.

Originally, I only install iwd, its dependence, and networkmanager for redundancy (leaving disabled). When my Wi-Fi has Public IPv6 and my wired NIC doesn't, the natural question comes to my mind is: Why my wired NIC doesn't have Public IPv6. If systemd-networkd is not able to manage DHCPv6, then why my Wi-Fi has Public IPv6? Is there anything I misunderstood about how DHCP works?

In the iwd Archwiki page, iwd supports IPv6, but it is disabled by default. I didn't touch any iwd config, still, my Wi-Fi has Public IPv6. I'm really confuse, there's must something else managing DHCPv6.

Offline

#10 2021-02-12 09:47:49

mmarzantowicz
Member
Registered: 2015-12-28
Posts: 32

Re: [SOLVED] Don't have IPv6 with wired NIC but have IPv6 with Wi-Fi

What about firewall? Do you have any installed and/or enabled on your Arch box? If yes, then disable it and see if it helps.

Note about tools used for managing network: on my home PC without wifi I use systemd-networkd mostly for static IP config but on notebook with Ethernet and WiFi I prefer to use NetworkManager. That's what works for me.

Offline

#11 2021-02-12 14:50:55

Jeff_WuYo
Member
Registered: 2020-12-14
Posts: 37

Re: [SOLVED] Don't have IPv6 with wired NIC but have IPv6 with Wi-Fi

mmarzantowicz wrote:

What about firewall? Do you have any installed and/or enabled on your Arch box?

When I install base package, which contain iptables. I don't have it enabled, nor configure it. I didn't even realize I installed it until now. I look into systemctl to check if iptables.service is running, and it's not running. iptables is also required by NetworkManager, I did enable NetworkManager for testing (now is disabled), perhaps it configure iptables and cause problem in someway?

Is there any linux distributions use systemd-networkd and systemd-resolved by default? Maybe I can copy their config and modify it. NetworkManager don't work for me either.

Offline

#12 2021-02-12 15:29:28

seth
Member
Registered: 2012-09-03
Posts: 50,931

Re: [SOLVED] Don't have IPv6 with wired NIC but have IPv6 with Wi-Fi

Please disable the wifi and reboot (noise reduction ;-), then post the complete system journal ("sudo journalctl -b", you can use the tip in the first link in my signature to easily upload it)

In general, do not use multiple network managing services at the same time, they will stumble over each other.

Offline

#13 2021-02-12 17:27:20

Jeff_WuYo
Member
Registered: 2020-12-14
Posts: 37

Re: [SOLVED] Don't have IPv6 with wired NIC but have IPv6 with Wi-Fi

seth wrote:

then post the complete system journal

Here is the output.

seth wrote:

In general, do not use multiple network managing services at the same time, they will stumble over each other.

I do know that, but I may not know if I done goofed.

Offline

#14 2021-02-12 22:02:33

seth
Member
Registered: 2012-09-03
Posts: 50,931

Re: [SOLVED] Don't have IPv6 with wired NIC but have IPv6 with Wi-Fi

There's no DHCPv6 request.
Try adding "DHCPv6Client=always" to the "[IPv6AcceptRA]" section.

Offline

#15 2021-02-13 04:43:00

Jeff_WuYo
Member
Registered: 2020-12-14
Posts: 37

Re: [SOLVED] Don't have IPv6 with wired NIC but have IPv6 with Wi-Fi

seth wrote:

Try adding "DHCPv6Client=always" to the "[IPv6AcceptRA]" section.

I edited the config and look through a new system journal, there's still no DHCPv6 request.

For testing, I enable Wi-Fi, reboot and print a system journal, I didn't see any DHCPv6 request from either NIC. The problem still there, wired NIC doesn't have Public IPv6 but Wi-Fi has.
The new system journal and config is here.

Last edited by Jeff_WuYo (2021-02-13 05:08:43)

Offline

#16 2021-02-13 08:43:47

rsmarples
Member
Registered: 2009-05-12
Posts: 287

Re: [SOLVED] Don't have IPv6 with wired NIC but have IPv6 with Wi-Fi

Just looking at the initial post, I can tell you there is no DHCPv6 in play because there is no DHCPv6 address.
You can see because of the two IPv6 addresses, one is a temporary address and the other address manages this.

Offline

#17 2021-02-13 09:38:30

Jeff_WuYo
Member
Registered: 2020-12-14
Posts: 37

Re: [SOLVED] Don't have IPv6 with wired NIC but have IPv6 with Wi-Fi

If so, how do I make my wired NIC has usable IPv6 connection? And why my two NIC behave differently?

Offline

#18 2021-02-13 15:24:49

seth
Member
Registered: 2012-09-03
Posts: 50,931

Re: [SOLVED] Don't have IPv6 with wired NIC but have IPv6 with Wi-Fi

Remove all efforts to add dhcpv6, restrict dhcp to ipv4 and try to disable the privacy extensions (for the moment)

~ ➜  cat /etc/systemd/network/20-wired.network

[Match]
Name=enp4s0

[Network]
DHCP=ipv4
IPv6PrivacyExtensions=no

[DHCP]
RouteMetric=10

Also SLAAC requires ipv6-icmp, https://wiki.archlinux.org/index.php/IP … on_(SLAAC)
So if you have an agressive firewall on that interface (only) ensure that package isn't blocked.

Offline

#19 2021-02-13 17:37:33

Jeff_WuYo
Member
Registered: 2020-12-14
Posts: 37

Re: [SOLVED] Don't have IPv6 with wired NIC but have IPv6 with Wi-Fi

I put the new config into 20-wired.network and reboot, still nothing changed.
After that, I tried putting -A INPUT -p ipv6-icmp -j ACCEPT into /etc/iptables/ip6tables.rules, enable iptables.service and ip6tables.service, and reboot. still, no IPv6 connection.
I also tried my old config with the firewall setting, the problem still remains.
BTW, IPv4 never failed, just no IPv6 connection on my wired NIC. And I had never manually configure any firewall settings. (I may be goofy and don't know if there's anything blocking IPv6 connection.)

Last edited by Jeff_WuYo (2021-02-13 17:41:18)

Offline

#20 2021-02-13 20:53:40

rsmarples
Member
Registered: 2009-05-12
Posts: 287

Re: [SOLVED] Don't have IPv6 with wired NIC but have IPv6 with Wi-Fi

run `tcpdump -vvvv -ttt -i eth1 icmp6 and 'ip6[40] = 134` or wireshark on the problem connection and check if you get a RA or not.
This will bypass any firewall issues.

So if you don't see any, it's a problem with your router - maybe the other OS is briding the connections?
If you do see some, then your host is ignoring them somehow.

Offline

#21 2021-02-13 22:29:26

mmarzantowicz
Member
Registered: 2015-12-28
Posts: 32

Re: [SOLVED] Don't have IPv6 with wired NIC but have IPv6 with Wi-Fi

OK, can you boot Arch Install ISO from USB or other removable media? Actually it could be any current live distro. If there is still no IPv6 then issue is beyond your Arch setup. Please use Linux not Windows (from your original post). I'm afraid you have garbage in your config files after all that changes.

Offline

#22 2021-02-14 08:50:18

Jeff_WuYo
Member
Registered: 2020-12-14
Posts: 37

Re: [SOLVED] Don't have IPv6 with wired NIC but have IPv6 with Wi-Fi

rsmarples wrote:

run tcpdump -vvvv -ttt -i enp4s0 icmp6 and 'ip6[40] = 134'

I install "tcpdump" and run the command, it just output tcpdump: listening on enp4s0, link-type EN10MB (Ethernet), snapshot length 262144 bytes and nothing else.

mmarzantowicz wrote:

If there is still no IPv6 then issue is beyond your Arch setup.

I boot up Arch live ISO, and print ip addr. The wired NIC HAS working IPv6 connection. I also copy the config files in "/etc/systemd/network" into my Arch build, and the wired NIC still no working IPv6 connection.

Config from live iso

[Match]
Name=en*
Name=eth*

[Network]
DHCP=yes
IPv6PrivacyExtensions=yes

[DHCP]
RouteMetric=512

ip addr output from live iso

1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
    inet6 ::1/128 scope host
       valid_lft forever preferred_lft forever
2: enp4s0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP group default qlen 1000
    link/ether 24:4b:fe:xx:xx:xx brd ff:ff:ff:ff:ff:ff
    inet 192.168.1.109/24 brd 192.168.1.255 scope global dynamic enp4s0
       valid_lft 86122sec preferred_lft 86122sec
    inet6 2001:b011:8007:xxxx:xxxx:xxxx:xxxx:xxxx/64 scope global temporary dynamic
       valid_lft 86352sec preferred_lft 85621sec
    inet6 2001:b011:8007:xxxx:xxxx:xxxx:xxxx:xxxx/64 scope global dynamic mngtmpaddr noprefixroute
       valid_lft 86352sec preferred_lft 86352sec
    inet6 fe80::264b:feff:fede:3b04/64 scope link
       valid_lft forever preferred_lft forever
4: wlan0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP group default qlen 1000
    link/ether 34:cf:f6:xx:xx:xx brd ff:ff:ff:ff:ff:ff
    inet 192.168.1.103/24 brd 192.168.1.255 scope global dynamic wlan0
       valid_lft 86307sec preferred_lft 86307sec
    inet6 2001:b011:8007:xxxx:xxxx:xxxx:xxxx:xxxx/64 scope global temporary dynamic
       valid_lft 86352sec preferred_lft 85950sec
    inet6 2001:b011:8007:xxxx:xxxx:xxxx:xxxx:xxxx/64 scope global dynamic mngtmpaddr noprefixroute
       valid_lft 86352sec preferred_lft 86352sec
    inet6 fe80::36cf:f6ff:fed6:d66b/64 scope link
       valid_lft forever preferred_lft forever

Offline

#23 2021-02-14 19:55:37

rsmarples
Member
Registered: 2009-05-12
Posts: 287

Re: [SOLVED] Don't have IPv6 with wired NIC but have IPv6 with Wi-Fi

Jeff_WuYo wrote:
rsmarples wrote:

run tcpdump -vvvv -ttt -i enp4s0 icmp6 and 'ip6[40] = 134'

I install "tcpdump" and run the command, it just output tcpdump: listening on enp4s0, link-type EN10MB (Ethernet), snapshot length 262144 bytes and nothing else.
/quote]

Run the same command on the other interface at the same time.
According to your address valid times you may need to wait 24 hours before you see data at the extreme case RFC incompliant case.

If you see data on it but not enp4s0 then the problem is likely outside your computer which then begs the question is the other OS even doing the right thing...

EDIT: Ah, I didn't see the livecd boot working. Maybe try the live CD kernel and modules on your host?

Last edited by rsmarples (2021-02-14 19:57:39)

Offline

#24 2021-02-15 14:53:35

Jeff_WuYo
Member
Registered: 2020-12-14
Posts: 37

Re: [SOLVED] Don't have IPv6 with wired NIC but have IPv6 with Wi-Fi

rsmarples wrote:

Maybe try the live CD kernel and modules on your host?

So I tried the latest linux kernel, and the wired NIC has properly working IPv6 connection.
In conclusion, the weird issue I have is due to the linux-lts not fully support intel I-225V NIC yet. Maybe I'll have to use normal kernel instead of lts kernel for now. Perhaps the issue will be fixed in the next linux-lts kernel.

Thanks for you guys helps and your patient.

(Does it count as solved or what? It kinda solved and kinda didn't. I'll mark as solved.)

Last edited by Jeff_WuYo (2021-02-15 14:57:12)

Offline

Board footer

Powered by FluxBB