You are not logged in.

#1 2021-06-09 09:42:36

bluewhiteman
Member
Registered: 2021-06-08
Posts: 4

[SOLVED] Cannot get an IPv4 lease anymore. IPv6 works fine.

I use Arch on my Thinkpad W520 to connect to my university's eduroam WAN, which is my internet connection.

Since yesterday I cannot get a reliable IPv4 lease on my laptop,
But my Android smartphone still has complete internet access and on my Andriod I can turn the WIFI on and off at will and always get an IPv4 lease immediately.
Also there is a secondary WAN on which I have the same connectivity problems on my laptop, meaning it probably is not the WAN causing the issue.

I use NetworkManager and if I set the connection to require an IPv4 IP, it hangs at connection stage. So right now I only have an IPv6 IP and can only use a tiny part of the web as a consequence, as most websites are not reachable. I am using Google's IPv6 DNS servers.

The NetworkManager settings are as follows:
IPv4 Settings: Automatic (DHCP) (not required, else it hangs)
IPv6 Settings: Automatic (not required, but it always gets one assigned).

An IPv4 might randomly get assigned to me if I try loads of times or by some miracle. I also tried to release with

dhclient -r wlp3s0

and to try to force it with

dhcpcd -4 -t 0

but in this case it just hangs trying to get a lease.



As you can see trying to get an IPv4 IP will result in timeout. If I run,

sudo dhcpcd -4 -t 0

it hangs at

dhcpcd-9.4.0 starting
dev: loaded udev
DUID 00:04:d1:8e:f9:01:51:f0:11:cb:b1:6b:ec:e3:f9:77:75:28
wlp3s0: connected to Access Point: eduroam
enp0s25: waiting for carrier
wlp3s0: IAID 5a:f5:6d:f8
wlp3s0: soliciting a DHCP lease

Sporadically, I get an IPv4 IP assigned. Last night it happened a few times while messing around. Today, I have been trying for over an hour and could not get it to work.

My wifi device is

03:00.0 Network controller: Intel Corporation Centrino Advanced-N 6205 [Taylor Peak] (rev 34)
	Subsystem: Intel Corporation Centrino Advanced-N 6205 (802.11a/b/g/n)
	Flags: bus master, fast devsel, latency 0, IRQ 42
	Memory at f2500000 (64-bit, non-prefetchable) [size=8K]
	Capabilities: <access denied>
	Kernel driver in use: iwlwifi
	Kernel modules: iwlwifi

with this configuration

*-network                 
       description: Ethernet interface
       product: 82579LM Gigabit Network Connection (Lewisville)
       vendor: Intel Corporation
       physical id: 19
       bus info: pci@0000:00:19.0
       logical name: enp0s25
       version: 04
       serial: 3c:97:0e:16:9e:be
       capacity: 1Gbit/s
       width: 32 bits
       clock: 33MHz
       capabilities: pm msi bus_master cap_list ethernet physical tp 10bt 10bt-fd 100bt 100bt-fd 1000bt-fd autonegotiation
       configuration: autonegotiation=on broadcast=yes driver=e1000e driverversion=5.12.9-arch1-1 firmware=0.13-3 latency=0 link=no multicast=yes port=twisted pair
       resources: irq:40 memory:f2600000-f261ffff memory:f262b000-f262bfff ioport:5080(size=32)
  *-network
       description: Wireless interface
       product: Centrino Advanced-N 6205 [Taylor Peak]
       vendor: Intel Corporation
       physical id: 0
       bus info: pci@0000:03:00.0
       logical name: wlp3s0
       version: 34
       serial: 8c:70:5a:f5:6d:f8
       width: 64 bits
       clock: 33MHz
       capabilities: pm msi pciexpress bus_master cap_list ethernet physical wireless
       configuration: broadcast=yes driver=iwlwifi driverversion=5.12.9-arch1-1 firmware=18.168.6.1 6000g2a-6.ucode latency=0 link=yes multicast=yes wireless=IEEE 802.11
       resources: irq:42 memory:f2500000-f2501fff

EDIT: I also did some other experiments:

1. I tried to use an external router using an ethernet cable. I could not get an IPv4 for the router either.
2. I tried using Majaro Live (just downloaded) and experienced the exact same problems.
3. I disabled ipv6 through boottime kernel arguments. It did not fix the problem.

SOLUTION:
Turns out WAN is discriminating against a subset of MAC addresses, not clear why. Solution: spoofing MAC address which can be done from Network Manager itself.

Last edited by bluewhiteman (Yesterday 20:40:07)

Offline

#2 2021-06-09 12:47:02

seth
Member
Registered: 2012-09-03
Posts: 21,074

Re: [SOLVED] Cannot get an IPv4 lease anymore. IPv6 works fine.

Do not run multiple services (networkmanager, dhcpcd, dhclient, …) at the same time and post a complete system journal.
To connect w/ dhclient or dhcpcd, establish a carrier manually w/ wpa_supplicant.

Do you have access to the APs logs/configuration? (Maybe a stale lease)

Offline

#3 2021-06-09 14:42:01

bluewhiteman
Member
Registered: 2021-06-08
Posts: 4

Re: [SOLVED] Cannot get an IPv4 lease anymore. IPv6 works fine.

seth wrote:

Do not run multiple services (networkmanager, dhcpcd, dhclient, …) at the same time and post a complete system journal.
To connect w/ dhclient or dhcpcd, establish a carrier manually w/ wpa_supplicant.

Do you have access to the APs logs/configuration? (Maybe a stale lease)

I edited my OP.
I posted a new journal log including everything for the past few minutes. I now have an ipv4 after a lot of trying. If I disconnect it, I won't get it back easily. I also posted new info at the bottom that might be helpful.

I cannot access the AP logs. But I don't think the WAN configuration is the issue as the problem occurs with all WANs in my neighbourhood and also when I try to connect to a local router via Ethernet.

And btw, I removed dhcpcd and dhclient and made sure NetworkManager is using its own dhcp client.

Last edited by bluewhiteman (2021-06-09 15:08:21)

Offline

#4 2021-06-09 16:07:24

seth
Member
Registered: 2012-09-03
Posts: 21,074

Re: [SOLVED] Cannot get an IPv4 lease anymore. IPv6 works fine.

I'd actually suggest to stop/disable NM and go for a manual connection w/ wpa_supplicant and dhcpcd/dhclient since the dhcp server simply doesn't respond to the request and we could try whether clientid ./. duid makes a difference.
Also NM jumps around a lot, maybe because the signals are mostly poor.

 also when I try to connect to a local router via Ethernet

Same eduroam or your own one?

If you suspect that the eduroam dhcp only hands out IPv4 if IPv6 doesn't work, you could disable the latter, https://wiki.archlinux.org/title/IPv6#Disable_IPv6

Offline

#5 2021-06-09 22:01:37

bluewhiteman
Member
Registered: 2021-06-08
Posts: 4

Re: [SOLVED] Cannot get an IPv4 lease anymore. IPv6 works fine.

seth wrote:

I'd actually suggest to stop/disable NM and go for a manual connection w/ wpa_supplicant and dhcpcd/dhclient since the dhcp server simply doesn't respond to the request and we could try whether clientid ./. duid makes a difference.
Also NM jumps around a lot, maybe because the signals are mostly poor.

 also when I try to connect to a local router via Ethernet

Same eduroam or your own one?

If you suspect that the eduroam dhcp only hands out IPv4 if IPv6 doesn't work, you could disable the latter, https://wiki.archlinux.org/title/IPv6#Disable_IPv6

Thanks for the help.
I did try the wpa_supplicant, but ran into the same problem. The output was not really giving any indication of why it could not get a lease.

I also tried a Debian based live distro with a much older software and ran into the same problem.

Then I got the idea of spoofing my MAC address using the same MAC address as the one on my Andriod. It works. I guess there is something going on with the WAN provider. I will talk to them to see what is up. I had tried MAC spoofing before but I guess I did not choose a realistic MAC address or something and it did not work at that time.

Not sure if I should mark as solved or not.

BTW should also mention that I have another USB WIFI adapter that I almost never use. I got it attached and I could not get an IPv4 address with that device either, despite it having a different MAC address. The whole situation is very bizarre.

Offline

Board footer

Powered by FluxBB