🛠️ Home Network Recovery + Connectivity Sanity Guide (Frodo edition)
📦 1. Understand the Current Picture
You're seeing:
-
camelothas<incomplete>in ARP — which means Frodo doesn’t see a MAC address for it (Camelot not online or not on same network interface). -
nmapsees only Frodo. -
Your
/etc/hostsdefines static IPs:10.20.30.1 camelot 10.20.30.2 frodo 10.20.30.3 johnnycamelot
🧰 2. Checklist to Run When “It’s Broken Again”
✅ Step 1: Check Interfaces on Frodo
ip aallison@frodo:~$ ip a
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 noprefixroute
valid_lft forever preferred_lft forever
2: wlp3s0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP group default qlen 1000
link/ether 9e:f1:18:ab:92:36 brd ff:ff:ff:ff:ff:ff permaddr 84:3a:4b:d3:95:50
inet 192.168.11.185/24 brd 192.168.11.255 scope global dynamic noprefixroute wlp3s0
valid_lft 3264sec preferred_lft 3264sec
inet6 fd82:6dbd:3692:80c4:17ca:b91f:9b62:951a/64 scope global dynamic noprefixroute
valid_lft 1593sec preferred_lft 1593sec
inet6 fe80::6aea:944e:9fdd:2461/64 scope link noprefixroute
valid_lft forever preferred_lft forever
23: enp0s26u1u2: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000
link/ether c8:4d:44:29:ae:57 brd ff:ff:ff:ff:ff:ff
inet 10.20.30.2/24 brd 10.20.30.255 scope global noprefixroute enp0s26u1u2
valid_lft forever preferred_lft forever
inet6 fd82:6dbd:3692:80c4:1b5d:e866:369c:53b4/64 scope global dynamic noprefixroute
valid_lft 1593sec preferred_lft 1593sec
inet6 fe80::a559:bafd:2881:9ecc/64 scope link noprefixroute
valid_lft forever preferred_lft forever
Look for:
-
enp0s26u1u2(wired) -
wlp3s0(wireless)
Confirm which interface is connected to the switch.
✅ Step 2: Check Camelot Is Powered On
From Frodo, try:
ping 10.20.30.1If it fails:
- Is Camelot booted?
- Is its Ethernet plugged in?
- Are you using Wi-Fi and wired simultaneously? Sometimes that breaks routing.
Log into Camelot and check:
ip a
Make sure its IP is indeed 10.20.30.1.
Also:
ping frodo📡 3. Switch Reset Woes – How to Tame DHCP vs Static
Your switch likely doesn’t assign IPs (unless it’s a smart switch). DHCP probably comes from your Wi-Fi router, but your 10.20.30.x scheme suggests you may be setting manual static IPs.
If that’s the case:
- Make sure each host is truly set with static IP (not DHCP-assigned).
- If any host switches to Wi-Fi or boots up late, the 10.20.30.x route might get messed up.
🔁 4. Quick Reconnect Fix (for Frodo)
Make this into a script (~/fix-network.sh):
#!/bin/bash
echo "Checking known hosts..."
for host in camelot johnnycamelot; do
echo -n "$host: "
ping -c 1 $host &> /dev/null && echo "✅ reachable" || echo "❌ unreachable"
done
echo ""
echo "Current ARP table:"
arp -a | grep 10.20.30
Make it executable:
chmod +x ~/fix-network.sh🛜 5. Mount Camelot’s Drive from Frodo
Once Camelot is reachable:
On Frodo:
sudo mkdir -p /mnt/camelot
sudo mount -t nfs camelot:/home/allison /mnt/camelot
You can add this to /etc/fstab if you want it persistent:
camelot:/home/allison /mnt/camelot nfs defaults 0 0Or, if you're using SSH instead of NFS:
sshfs allison@camelot:/home/allison /mnt/camelot💻 6. When Windows is in Charge
On Windows:
- Assign a static IP in the 10.20.30.x range.
-
Enable file sharing, or run
python -m http.serverin a folder to share it quickly. -
From Frodo:
smbclient -L //camelot -U youruser
💖 Welcome back, Frodo rider! You're doing great — and Camelot is reachable from both Wi-Fi and Ethernet on Frodo, based on this:
camelot (10.20.30.1) at a0:ce:c8:56:e2:4c [ether] on wlp3s0
camelot (10.20.30.1) at a0:ce:c8:56:e2:4c [ether] on enp0s26u1u2
That means Camelot’s MAC address is now in Frodo’s ARP table on both interfaces — Wi-Fi and Ethernet — which can happen if Camelot temporarily broadcast on both or if Frodo is listening on both interfaces.
🧩 Why This Fails:
cat /sys/class/net/enp3s0f3u2u1/carrier
Gives:
No such file or directory
That’s because you’re now on Frodo, and enp3s0f3u2u1 is the Ethernet interface on Camelot — not on this machine.
On Frodo, your Ethernet interface is probably:
enp0s26u1u2
So from Frodo, to check its cable state:
cat /sys/class/net/enp0s26u1u2/carrier
Expected:
-
1= cable is in, link up -
0= cable unplugged
✅ So Your Fix-Network Plan (From Frodo)
You're already good! But here's a cleaned-up, host-aware version of your notes for future reference:
🧭 On Camelot:
cat /sys/class/net/enp3s0f3u2u1/carrier # Only valid on Camelot
sudo ip addr add 10.20.30.1/24 dev enp3s0f3u2u1
sudo ip link set enp3s0f3u2u1 up🧭 On Frodo:
cat /sys/class/net/enp0s26u1u2/carrier # Frodo's own Ethernet link
ping camelot # Test Camelot reachability
arp -a | grep camelot # Confirm MAC and interface
Would you like to enhance your fix-network.sh script to:
- Detect which host it's on (Frodo vs Camelot)?
- Adjust interface checks accordingly?
Or leave it beautifully minimalist for now?