Skip to content
Jason609's profile

Contributor

 • 

13 Messages

Tue, Feb 23, 2021 6:42 PM

DPC3941B Firmware Upgrade Broke IPV6

Comcast pushed a firmware upgrade to my DPC3941B modem last night and broke my IPV6 connectivity. I had asked for help on these forums previously and Tier 2 Support rolled back my firmware back to fix the issue, this was fine until last night. Additionally, the modem has not been stable since the upgrade and keeps rebooting and I can no longer access the modem's internal web server through static gateway IP address. Can you assist with a firmware roll back or device upgrade to fix these issues? 

Responses

Contributor

 • 

12 Messages

3 m ago

Phone apps and some websites no longer work properly if IPv6 is "half broken" as we seem to be experiencing with Comcast. If IPv6 is detected at all, some apps and websites try their best to stick with IPv6, and Comcast's "half broken" situation just leaves those apps/websites waiting forever, ultimately leaving users with a broken app. Comcast, please dig deep into this and fix it.

New problem solver

 • 

68 Messages

3 m ago

My modem was rebooted by comcast again last night, and of course, it broke IPv6 again by giving me a different prefix ... ARRRGGGHHH. .now playing PD roulette until I get the old prefix back.

Contributor

 • 

12 Messages

3 m ago

How do you get a new prefix ("PD roulette")? I seem to be stuck with the same 6ecX prefix (my /56 is 6e00)

Official Employee

 • 

1 Message

@mahdi_c Can you confirm what you are trying to do? We are  here to assist. 

New problem solver

 • 

68 Messages

2 m ago

@mahdi_c : you need to delete the DUID on your firewall/router. This is the latest iteration of a script I am using for my opnsense firewall:

#!/usr/local/bin/bash
while [ "1" == "1" ] ; do
prefix=$(cat /tmp/em0_pdinfo)
if [ "$prefix" == "<insert your dream prefix here>" ]; then
  echo "all good"
  exit
fi
cat /var/db/dhcp6c_duid | hexdump | grep 0000000
rm /var/db/dhcp6c_duid
if [ ! -f /tmp/em0_pdinfo ]; then
  echo "no prefix file yet"
  exit
fi
pid=$(cat /var/run/dhcp6c.pid)
kill -9 $pid
echo dhcp6c killed
sleep 10
/usr/local/sbin/dhcp6c -c /var/etc/dhcp6c.conf -p /var/run/dhcp6c.pid
tcpdump -i em0 -vc2 -nn port 546
echo dhcp6c restarted
sleep 10
ls -l /tmp/em0_pdinfo
cat /tmp/em0_pdinfo
done

New problem solver

 • 

68 Messages

1 m ago

Here is an updated script for opnsense (note there are two spots where you need to insert your desired IPv6 prefix):

#!/bin/csh
set prefix=0
while ( $prefix != '<DESIRED IPv6 PREFIX>' )
  if ( -f /tmp/igb0_pdinfo) then
     set prefix=`cat /tmp/igb0_pdinfo`
     if ( prefix == '<DESIRED IPv6 PREFIX>' ) then
       exit
     endif
  else
     set prefix=0
  endif
  set pid=`cat /var/run/dhcp6c.pid`
  kill -9 $pid
  sleep 5
  rm /var/db/dhcp6c_duid
  rm /tmp/igb0_pdinfo
  /usr/local/sbin/dhcp6c -c /var/etc/dhcp6c.conf -p /var/run/dhcp6c.pid
  while ( ! -f /tmp/igb0_pdinfo )
    sleep 1
  end
  cat /tmp/igb0_pdinfo
end