Under construction: Version: 2025-06-28
More context: >Here< (and scroll up)
I take notes as I do things. Otherwise I forget what I did. This page is a summary. Maybe it will be useful to somebody.

How can IPv6 be used with Spectrum Internet?

About twenty years ago I pulled CAT 5 cable through the walls of my house. In the basement was a Linux machine with two ethernet cards. One connected to a DSL modem, the other through the cables to the rest of the house. The DSL modem had a fixed routable IPv4 address. Here is a block diagram of the way it was. That is now obsolete, because my ISP has discontinued DSL service. Instead I now have a wireless router from Spectrum which connects to the internet through a co-ax cable. It works well enough for those computers (laptops) that have WiFi to connect to the router.

After a little work, the computers on the wired Ethernet can communicate with each other to back-up files and print. I have not gotten the wired network connected to the wireless, because I thought I would need to re-configure the Spectrum router, but I was afraid to mess with it for fear of screwing up what works.

I was using a wired computer (called fcs22), which (I thought) therefore had no Internet connection. By accident I started a web browser and to my astonishment it displayed a Google search page, and furthermore connected to the random web site when I entered a random search query. Further investigation revealed that it was using IPv6.

I had never done anything to configure IPc6 and knew little about it. It's designed to configure itself and it looks like that worked. I booted up a wired computer (fcs22) and did ip addr on it and got:

    kwright@fcs22:~$ ip addr
    2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
	link/ether f0:de:f1:10:0d:ea brd ff:ff:ff:ff:ff:ff
	inet 192.168.2.121/24 scope global eth0
	   valid_lft forever preferred_lft forever
	inet6 2600:6c64:5800:162f::13c7/128 scope global dynamic 
	   valid_lft 604627sec preferred_lft 604627sec
	inet6 2600:6c64:5800:162f:cc8c:70a7:c052:358a/64 scope global temporary dynamic 
	   valid_lft 604626sec preferred_lft 86138sec
	inet6 2600:6c64:5800:162f:f2de:f1ff:fe10:dea/64 scope global mngtmpaddr noprefixroute dynamic 
	   valid_lft 604626sec preferred_lft 604626sec
	inet6 fe80::f2de:f1ff:fe10:dea/64 scope link 
	   valid_lft forever preferred_lft forever
  
One week is 86400 seconds. I found a reddit page that purports to explain why there are three IPv6 addresses. The RFC-4291:IP Version 6 Addressing Architecture is more authoratative, but less specific to the question. The addresses that start with 2600: are part of the Spectrum network. The one that starts with fe80: is link local.

It's a bit scary to have an address that ends in DEA, but it's just part of the Ethernet MAC address and has nothing to do with the Feds or Narks. At least it makes the address easy to recognize.

I am used to assigning IPv4 192.168.0.0/16 addresses to machines inside the house. Because those addresses are non-routable, they only work in my house, so I don't need to worry too much about security of those machines. It seemed like the link-local IPv6 addresses would be similar. Wrong!

This happens if I try to connect to the link local address from a wireless computer:

    kwright@fcs26:~$ ssh fe80::f2de:f1ff:fe10:dea
    ssh: connect to host fe80::f2de:f1ff:fe10:dea port 22: Invalid argument
  

That's not very informative but we can ask for more debugging information. I tried that, but it didn't help. Then I thought that the wireless and the wired networks, even though they are still both in my house, are no longer on the same link (Ethernet segment). The connection must go through the Spectrum router.

So try the Spectrum address:

  kwright@fcs26:~$ ssh 2600:6c64:5800:162f:cc8c:70a7:c052:358a
       ^C
  
It hangs until I use ctl-C to kill it. I ping the same address
    kwright@fcs26:~$ ping  2600:6c64:5800:162f:cc8c:70a7:c052:358a
    PING 2600:6c64:5800:162f:cc8c:70a7:c052:358a  56 data bytes
    ... ... ...
    3 packets transmitted, 3 received, 0% packet loss, time 2003ms
  
It seems to be there. I try the exact same ssh command that didn't work five minutes ago. This time it works:
    kwright@fcs26:~$ ssh 2600:6c64:5800:162f:cc8c:70a7:c052:358a
    kwright@2600:6c64:5800:162f:cc8c:70a7:c052:358a's password: 
    Linux fcs22 4.9.0-12-686-pae #1 SMP Debian 4.9.210-1 (2020-01-20) i686

    The programs included with the Debian GNU/Linux system are free software;
    ... ... ...
    Last login: Mon Mar 11 15:21:31 2024 from 2600:6c64:5800:162f:216:35ff:fe01:4d4a
    kwright@fcs22:~$ 
  
What's up with that? The same seems to happen if I use the Spectrum/DEA address
    ssh 2600:6c64:5800:162f:f2de:f1ff:fe10:dea
  
or the Spectrum/13C7 address. They are all flakey. In the middle of doing something the terminal freezes and seems not to be reading the keyboard. Sometimes it suddenly starts working again if I bang on all the keys (ctl-C, ctl-D, ctl-Q, F9), I don't know why. Sometimes I just Enter ~. and log in again, but that's no way to live.

Update: 2024-03-14 For no reason I can see it seems to work better now. I don't think I changed anything relevant, but ssh has worked every time I tried it lately. — Later, I just got another ssh fails; ping; ssh works. I booted fcs22, checked that it could ssh ip6-fcs26, but back on fcs26, ssh ip6-fcs22 fails until pinged.

Update: 2025-04-12 I forgot about this page for a while. Since the last update fcs22 has hardware broken, won't boot, this has nothing to do with IPv6. I installed from Debian from scratch on some other very old hardware, that I call fcs23, by booting from a debian-12.1.0-amd64-netinst.iso. It automatically finds an IPv6 connection to the a Debian server and installs everything. It all seems to work except the whole machine just locks up; screen freezes; does not respond to keyboard, mouse, or ping. I got this computer second-hand, used, for free, about ten years ago. Maybe its time to blow a few dollars on another computer.

Update: 2025-06-27 When I wrote that, I thought the problem had something to do with the routing tables. For a while it seemed to work better, but sometimes it would take several second or longer to echo a character when working on the VPS, ping said Network not reachable. The router puts up a web page at https://192.168.1.1 which shows some basic information, including a line that ordinarily says ``Internet Status connected''. Pressing ctl-r makes it switch to ``Internet Status determining...'', and then back. I have never seen it say ``not connected'', but sometimes it takes a few seconds and then the browser says ``An error occurred [Try again]''. This seems like a problem with the wifi connection itself,

I move the router from the basement, where it has been, to the living room, where the laptops usualy are. It seems to work much better. But maybe it only needed a power cycle, or maybe the truck that dug up the street…

Unfortunately, the wired LAN inside the house no longer works.


HTML5?
(checked 2025-06-28
)
      Creative Commons License
This work is licensed under
Creative Commons Attribution-Share Alike 3.0