1

I normally wouldn't ask this kind of question but it's been a long term, ongoing thing.

I use Arch Linux, and I use netcfg for wireless connections but I used dhcpcd for my wired ethernet connections. Recently, I began to experiment with a MAC randomiser. This is when the problem began, although I am not sure whether the problem is a result of the randomiser.

I no longer us it, but every time I try to obtain a lease from my router, dhcpcd tries to rebind the existing lease it has. It always fails, receiving NAK from the router. It then requests a new IP address, which it is assigned.

The problem is that after a while of doing this, the router will suddenly seize up and block anyone from connecting to the internet, Upon checking the router console at 192.168.1.254, I will find that my hostname has eaten up 10 or 11 assignments from the DHCP server - that is, there will be anywhere from 3 to 20 entries in the "currently connected" list, all with the same MAC (since i'm not randomising any more) but presumably with different IP addresses.

Because it's a home-use router, all these connections cause the router to run out of IP addresses, and no one connect until it is reset. This has been happening continually, and I have been unable to solve it. To save you time, I have done all of the following:

  1. Closed dhcpcd gracefully with "dhcpcd -k" and reconnected.
  2. Tried using netcfg instead of dhcpcd to connect.
  3. Reset the router.

One interesting thing to note:

If I do use the MAC randomiser, it will work. However, each time I reconnect a new MAC address will be generated, and will be appended to the table. These will fill up the IP addresses allowed by my router in much the same fashion.

Any help with this would be apppreciated!

Other tidbits which may be useful?:

I run hamachi I use openvpn I occasioanlly use Tor. It's a laptop so I connect and disconnect a lot.

0

1 Answer 1

1

You likely have a pile of old DHCP leases for the random MAC addresses and dhcpcd is trying to renew them one after the other. Get rid of the old leases (stored in a file somewhere) and the problem should go away.

You must log in to answer this question.