• 1 Post
  • 29 Comments
Joined 3 years ago
cake
Cake day: July 5th, 2023

help-circle
  • I definitely don’t intend to run anything core over wifi… my home servers all have direct eth connections but also have WiFi hardware that came with them. The WiFi is really just a backup in case the switch they’re connected to dies. And since it turns out the eth and WiFi devices can share the same ip, having a resilient backup was easier than I expected.

    In terms of size, the networks has about 70 devices and I’ve got 2 pi hole servers running dhcp & dns services, including unbound, all with ups’ and a generator backup so it’s about as resilient as I can make it.






  • In terms of why, all I really want is for the machine to have the same, consistent ip address. Since it’s one of my networks dns and dhcp servers, I want it always available with the same ip. It’s hard-wired but has wifi, so in theory if the eth connection or switch it’s attached to dies, the wifi connection can kick in and it can still serve the network if it still has the same ip address, otherwise the wifi connection is no benefit.

    Since I didn’t know I could assign both connections the same ip address and still be functional, I originally setup a script that monitors network status and disables the wifi if eth is active and then re-enables the wifi if the eth connection drops. This works well on my two servers with one exception… my dvr scheduling/recording services don’t work properly when the wifi adapter is disabled. Not sure why but that’s how I stumbled on this setup with both active with the same ip and realized everything just seemed to work.¯\_(ツ)_/¯


  • That’s the thing about UDP packets… receipt isn’t acknowledged as part of the protocol. It’s send and forget. I’m not sure a UDP packet sent to my server would get lost but I’m not 100% certain there couldn’t be situations where the packet is received by the server on both interfaces, essentially duplicated. It’s been almost 30 years since I wrote programs that utilized UDP for communicating. I’m definitely a little rusty. 😄



  • You will need to make sure the IP you assign the adapter isn’t an IP the router will try to assign to another machine or device. The dhcp services don’t assign this IP address and it’s manually assigned in the adapter config so I guess the router doesn’t know or care.

    I am kind of curious how traffic destined for this address doesn’t have issues though, like being received twice. Maybe I haven’t tested enough from a mix of devices on the network.



  • Thanks for the reply. They seem to both be active. I don’t have iftop but tcpdump shows traffic on both, though much less on the wifi connection.

    ip route shows:

    default via 192.168.1.1 dev enp1s0 proto dhcp metric 100 
    default via 192.168.1.1 dev wlp2s0 proto dhcp metric 600 
    169.254.0.0/16 dev enp1s0 scope link metric 1000 
    192.168.1.0/24 dev enp1s0 proto kernel scope link src 192.168.1.4 metric 100 
    192.168.1.0/24 dev wlp2s0 proto kernel scope link src 192.168.1.4 metric 600
    

    I really didn’t think I’d be allowed to statically assign the same IP address to both interfaces, and surprisingly it seems to be working ok. I’m just wondering what I don’t know that’s going to bite me :)








  • Thank you. I think my biggest concern is that I can’t fix it when it breaks, simply due to lack of experience. I’ve fixed busted Windows partitions and boot issues, but never Linux because I’ve just never had an issue with the installs I have and don’t have nearly the same number of years under my belt with it.

    As you said I think first order of business is a functional bootable USB which I can use to both backup and restore the partition, and I need to do a practice run restore to prove it works and that I know what I’m doing before I need it.


  • Any viable option if you can’t install 2 drives? My laptop only allows one. It currently has Win10 on it and I’m hoping to replace it with Linux with an option to boot into Windows when needed, especially for my wife who isn’t as technical or experienced with Linux. Not sure if there’s anyway to do it without Windows nuking my setup.