How to configure the IPv6 only with PPPoE?

Hi all,

I'm using openwrt-21.02 and i can able to configure the ipv4 only and ipv4/ipv6 or dual stack with the pppoe protocol, but could not find any solution for ipv6 only with pppoe proto. Can you please help me on resolving this?

Thanks

is long time EOL, you should upgrade.

okay but i cannot move it to the new version. Can you pls suggest how we can configure ipv6 only with pppoe?

Thanks

Please connect to your OpenWrt device using ssh and copy the output of the following commands and post it here using the "Preformatted text </> " button:
grafik
Remember to redact passwords, MAC addresses and any public IP addresses you may have:

ubus call system board
cat /etc/config/network
cat /etc/config/wireless
cat /etc/config/dhcp
cat /etc/config/firewall
root@Alphion:~# ubus call system board
cat /etc/config/network
cat /etc/config/wireless
cat /etc/config/dhcp
cat /etc/confi{
        "kernel": "5.4.55",
        "hostname": "******",
        "system": "ARMv7 Processor rev 4 (v7l)",
        "model": "ECONET (Device Tree)",
        "board_name": "econet,en7523",
        "release": {
                "distribution": "*****",
                "version": "2.6.H.K9.**.**",
g               "revision": "r16325-88151b8303",
                "target": "airoha/en7523",
                "description": "******* 2.6.H.K9.**.** 2.6.H.K9.**.**"
        }
}
/firewroot@Alphion:~# cat /etc/config/network
all
config interface 'loopback'
        option proto 'static'
        option ipaddr '127.0.0.1'
        option netmask '255.0.0.0'
        option lastchange '2005'
        option device 'lo'

config globals 'globals'
        option ula_prefix 'fdea:e111:ce6b::/48'

config route6
        option route6_instance '1'
        option static '0'
        option target 'fe80::/64'
        option metric '256'
        option renabled '1'

config route6
        option route6_instance '2'
        option static '0'
        option target 'fe80::/64'
        option metric '256'
        option interface 'wan'

config interface 'lan'
        option force_link '1'
        option proto 'static'
        option ipaddr '192.168.220.1'
        option netmask '255.255.255.0'
        option ip6assign '60'
        option device 'br-lan'

config xpon_vlan 'xpon_vlan'
        option vlan_id '10'

config xpon_auth 'xpon_auth'
        option pon_mode 'GPON'
        option auth_type_g 'sn'
        option gpon_sn_auth_type 'ascii'
        option sn_ascii_password 'xxxx'
        option loid '***1234'
        option loidPasswd '1111'
        option sn '****346A0015'

config device
        option name 'br-lan'
        option type 'bridge'
        list ports 'eth0.1'
        list ports 'eth0.2'
        list ports 'eth0.3'
        list ports 'eth0.4'
        option igmp_snooping '1'

config device 'dev_wan0'
        option type '8021q'
        option ifname 'pon'
        option vid '77'
        option name 'pon.77'
        option macaddr '00:AA:BB:01:23:40'
        option mtu '1400'

config interface 'wan0'
        option device 'pon.77'
        option proto 'pppoe'
        option username '*****'
        option password '*****123'
        option reqaddress 'try'
        option reqprefix 'auto'
        option ipv6 '1'
        option pppd_option 'ipv6-only'
        option metric '10'

root@Alphion:~# cat /etc/config/wireless

config wifi-device 'radio0'
        option type 'mac80211'
        option band '2.4GHz'
        option channel 'auto'
        option hwmode '16'
        option path 'pci0000:00/0000:00:00.0/0000:01:00.0'
        option htmode '20'
        option disabled '0'
        option country 'US'
        option num_antennas '2'
        option beacon_int '100'
        option short_gi_20 '1'
        option short_gi_40 '1'
        option phy 'phy0'

config wifi-iface 'default_radio0'
        option device 'radio0'
        option network 'lan'
        option ifname 'ra0'
        option mode 'ap'
        option disabled '0'
        option encryption 'psk2'
        option key 'P@ssword@123'
        option isolate '0'
        option uapsd '1'
        option hidden '0'
        option wmm '1'
        option macfilter 'disable'
        option ieee80211w '0'
        option max_inactivity '60'
        option wps_pushbutton '1'
        option ssid '******-Wifi-2G'
        option macaddr '00:AA:BB:01:23:45'

config wifi-device 'radio1'
        option type 'mac80211'
        option band '5GHz'
        option channel 'auto'
        option hwmode '17'
        option path 'pci0000:00/0000:00:00.0/0000:01:00.0+1'
        option htmode '80'
        option disabled '0'
        option country 'US'
        option num_antennas '2'
        option beacon_int '100'
        option doth '1'
        option short_gi_20 '1'
        option short_gi_40 '1'
        option phy 'phy1'

config wifi-iface 'default_radio1'
        option device 'radio1'
        option network 'lan'
        option ifname 'rai0'
        option mode 'ap'
        option disabled '0'
        option encryption 'psk2'
        option key 'P@ssword@123'
        option isolate '0'
        option uapsd '1'
        option hidden '0'
        option wmm '1'
        option macfilter 'disable'
        option ieee80211w '0'
        option max_inactivity '60'
        option wps_pushbutton '1'
        option ssid '*****-Wifi-5G'
        option macaddr '00:AA:BB:01:23:4A'

root@Alphion:~# cat /etc/config/dhcp

config dnsmasq
        option domainneeded '1'
        option boguspriv '1'
        option filterwin2k '0'
        option localise_queries '1'
        option rebind_protection '1'
        option rebind_localhost '1'
        option local '/lan/'
        option domain 'lan'
        option expandhosts '1'
        option nonegcache '0'
        option authoritative '1'
        option readethers '1'
        option leasefile '/tmp/dhcp.leases'
        option resolvfile '/tmp/resolv.conf.d/resolv.conf.auto'
        option nonwildcard '1'
        option localservice '1'
        option ednspacket_max '1232'
        option confdir '/tmp/dnsmasq.d'

config dhcp 'lan'
        option interface 'lan'
        option start '33'
        option limit '221'
        option leasetime '12h'
        option dhcpv4 'server'
        option dhcpv6 'server'
        option ra 'server'
        option ra_slaac '1'
        list ra_flags 'managed-config'
        list ra_flags 'other-config'
        list dhcp_option '125,00:00:0D:E9:20:04:06:39:30:36:37:31:37:05:0C:48:57:54:43:34:30:33:46:30:30:30:33:06:08:41:53:45:45:31:37:34:32'

config dhcp 'wan'
        option interface 'wan'
        option ignore '1'

config odhcpd 'odhcpd'
        option maindhcp '0'
        option leasefile '/tmp/hosts/odhcpd'
        option leasetrigger '/usr/sbin/odhcpd-update'
        option loglevel '4`Preformatted text`'


It appears you are using firmware that is not from the official OpenWrt project.

When using forks/offshoots/vendor-specific builds that are "based on OpenWrt", there may be many differences compared to the official versions (hosted by OpenWrt.org). Some of these customizations may fundamentally change the way that OpenWrt works. You might need help from people with specific/specialized knowledge about the firmware you are using, so it is possible that advice you get here may not be useful.

You may find that the best options are:

  1. Install an official version of OpenWrt, if your device is supported (see https://firmware-selector.openwrt.org).
  2. Ask for help from the maintainer(s) or user community of the specific firmware that you are using.
  3. Provide the source code for the firmware so that users on this forum can understand how your firmware works (OpenWrt forum users are volunteers, so somebody might look at the code if they have time and are interested in your issue).

If you believe that this specific issue is common to generic/official OpenWrt and/or the maintainers of your build have indicated as such, please feel free to clarify.

In generic openwrt firmware, how to configure the ipv6 only with pppoe?

Thanks

Back to this original question: since pppoe was standardized before IPv6 existed, configuration of IPv4 is part of the initial connection negotiation but IPv6 support if any is done mostly outside the pppoe handshake. The most common way is that after the connection is up, if the ISP has advertised v6 capability, the customer makes a DHCPv6 request inside the ppp tunnel. (In official firmware, option ipv6 auto does all of this automatically) At that point you always have a v4 IP and are extending to dual stack. You could work around to effectively have a v6 only connection by configuring your router to not route any v4 to the wan.

Fiber ISPs are moving away from pppoe toward ipoe as it is less network overhead and CPU work. You could find out if that is an option perhaps on a different VLAN.

There are no officially supported routers with built in xPON modems as yours has so no one here would know how to configure it.

@mk24 Thank you so much for your clarification🙂!!!

No idea what you're talking about.

The "oE" is pretty irrelvant, since PPPoE only is about PPP framing on an ethernet link. You will always run PPP on a PPPoE link. PPP is an extensible tunneling protocol, using a number of different NCPs to configure the actual L3 protocl. IPCP is one of these, implementing IPv4 support. And IPV6CP is another, implementing IPv6 support. Both of these are negotiated when the PPP link is brought up.

Irrelevant, but FYI: IPV6CP was originally standardized as RFC2023 in 1996, more two years before the informational RFC2516 gave us PPPoE. AFAIK, PPPoE isn't formally a standard yet. But that's hair splitting...

Back to relevant parts: You can't do DHCPv6 without transporting IPv6 datagrams on the link. And to do that, you need IPV6CP to succeed and reach the Opened state. But contrary to IPCP, IPV6CP will only negotiate an interface ID ( the low 64 bits of an address). This is required and sufficient to configure link local addresses using the fe80::/64 prefix. The you can run DHCPv6 and/or SLAAC on top of that to configure other prefixes/addresses.

For the original question: You can disable IPv4 on a PPP link with the pppd option "noip". Use "+ipv6" to enabled IPv6, but this should be default.

1 Like

This topic was automatically closed 10 days after the last reply. New replies are no longer allowed.