Bof.

No theme, no regular posting.

Archive

© 2014-2021. Raphaël Rigo CC-BY-SA 4.0

About.

Replacing the Livebox 5 with an ONT GPON LXT-010G-D

Context

I bought a GPON LXT-010G-D to replace my Livebox 5, which comes with an integrated ONT, so you cannot use an MC220L easily. Plus, the Sercomm FGS202 that is provided by Orange does not allow you to spoof the necessary information to register on the GPON tree (if I understood things correctly).

LXT basic setup

The LXT starts with a default IP: 192.168.1.1. To change it, login on the HTTP interface with adsl / realtek and change the config on the LAN page.

Once this is done you can restart it and connect using Telnet:

Trying 10.0.0.199...
Connected to 10.0.0.199.
Escape character is '^]'.
LXT-010G-D login: adsl
Password: 
# 

Copying the necessary information from the Livebox 5

The ONT information is accessible from the Livebox web interface as can be seen in the screenshot:

ONT information

I think I modified (at least) the following parameters (see the references section below for the source):

Using the following commands:

# flash set PON_VENDOR_ID SMBS
PON_VENDOR_ID=SMBS

DHCP client options

Everything comes from Vincent Bernat’s page, thanks a lot!

/etc/network/interfaces:

auto enp3s0
iface enp3s0 inet manual

auto internet
iface internet inet dhcp
  pre-up    ip link add link enp3s0 name internet type vlan id 832 egress-qos-map 0:0 6:6
  pre-up    /etc/network/tc_for_livebox
  post-down ip link del internet

tc_for_livebox:

#!/bin/sh

# We need a qdisc to set filters
tc qdisc replace dev internet root handle 1: prio
tc filter del dev internet

# DHCP (raw sockets, do not specify "protocol ip")
tc filter add dev internet parent 1: prio 1 u32 \
     match ip protocol 17 ff \
     match ip dport 67 ffff \
     action skbedit priority 0:6
# ARP
tc filter add dev internet parent 1: prio 2 protocol 0x806 u32 \
     match u32 0 0 \
     action skbedit priority 0:6
# IGMP
tc filter add dev internet parent 1: prio 3 protocol ip u32 \
     match ip protocol 2 ff \
     action skbedit priority 0:6
# ICMP
tc filter add dev internet parent 1: prio 4 protocol ip u32 \
     match ip protocol 1 ff \
     action skbedit priority 0:6

dhclient.conf:

option rfc3118-authentication code 90 = string;
interface "internet" {
  timeout 60;
  retry 1;
  select-timeout 0;
  send vendor-class-identifier "sagem";
  send user-class "+FSVDSL_livebox.Internet.softathome.Livebox4";
  # fti/xxxxxx identifier can be converted to hexadecimal with:
  #  echo -n 123456 | od -A n -t x1
  send rfc3118-authentication 00:00:00:00:00:00:00:00:00:00:00:1a:09:00:00:05:58:01:03:41:01:0d:66:74:69:2f:xx:xx:xx:xx:xx:xx:xx;
  request subnet-mask, routers,
          broadcast-address,
          dhcp-lease-time, dhcp-renewal-time, dhcp-rebinding-time,
          rfc3118-authentication;
}

Results

Life without Livebox:

Ping statistics, before and after:

rtt min/avg/max/mdev = 1.835/5.440/268.624/12.040 ms
rtt min/avg/max/mdev = 1.850/2.355/2.636/0.104 ms

References