rtbrick / bngblaster

The BNG Blaster is an open-source network tester for access and routing protocols.
https://rtbrick.github.io/bngblaster/
BSD 3-Clause "New" or "Revised" License
210 stars 34 forks source link

After restarting the DUT, IPoE subscribers get re-established whereas PPPoE/L2TP subscribers do not. #252

Closed ArunPrakashThangaraj closed 6 months ago

ArunPrakashThangaraj commented 7 months ago

Describe the bug

After restarting the DUT, IPoE subscribers get re-established whereas PPPoE/L2TP subscribers do not.

To Reproduce

Bring up IPoE/PPoE/PPPoE over L2TP subscribers. Restart the BNG. Check if IPoE/PPoE/PPPoE over L2TP subscribers get re-established back again

Version (bngblaster -v):

supervisor@SN-STD-25-3211725:~ $ bngblaster -v
Version: 0.8.43

JSON configuration:

{
  "interfaces": {
    "rx-threads": 4,
    "tx-threads": 4,
    "network": [
      {
        "interface": "SN-11-B3",
        "address": "192.168.131.2/24",
        "gateway": "192.168.131.1",
        "address-ipv6": "fc00:1337:7331::2",
        "gateway-ipv6": "fc00:1337:7331::1",
        "isis-instance-id": 1,
        "isis-level": 1,
        "ldp-instance-id": 1
      }
    ],
    "access": [
      {
        "interface": "SN-7-B1",
        "type": "ipoe",
        "agent-remote-id": "CBNG1.RTBRICK.{session-global}",
        "outer-vlan-min": 1001,
        "outer-vlan-max": 2000,
        "inner-vlan-min": 1001,
        "inner-vlan-max": 1100,
        "stream-group-id": 1,
        "monkey": true
      },
      {
        "interface": "SN-7-B1",
        "type": "pppoe",
        "agent-remote-id": "CBNG1.RTBRICK.{session-global}",
        "outer-vlan-min": 2001,
        "outer-vlan-max": 3000,
        "inner-vlan-min": 1001,
        "inner-vlan-max": 1100,
        "stream-group-id": 1,
        "monkey": true
      },
      {
        "interface": "SN-8-B1",
        "type": "ipoe",
        "agent-remote-id": "CBNG1.RTBRICK.{session-global}",
        "outer-vlan-min": 1001,
        "outer-vlan-max": 2000,
        "inner-vlan-min": 1001,
        "inner-vlan-max": 1100,
        "stream-group-id": 1,
        "monkey": true
      },
      {
        "interface": "SN-8-B1",
        "type": "pppoe",
        "agent-remote-id": "CBNG1.RTBRICK.{session-global}",
        "outer-vlan-min": 2001,
        "outer-vlan-max": 3000,
        "inner-vlan-min": 1001,
        "inner-vlan-max": 1100,
        "stream-group-id": 1,
        "monkey": true
      },
      {
        "interface": "SN-7-B1",
        "type": "pppoe",
        "username": "l2tp4@rtbrick.com",
        "password": "test",
        "outer-vlan-min": 10,
        "outer-vlan-max": 10,
        "inner-vlan-min": 1001,
        "inner-vlan-max": 2000,
        "authentication-protocol": "PAP",
        "stream-group-id": 2,
        "monkey": true
      },
      {
        "interface": "SN-8-B1",
        "type": "pppoe",
        "username": "l2tp4@rtbrick.com",
        "password": "test",
        "outer-vlan-min": 10,
        "outer-vlan-max": 10,
        "inner-vlan-min": 1001,
        "inner-vlan-max": 2000,
        "authentication-protocol": "PAP",
        "stream-group-id": 2,
        "monkey": true
      }
    ]
  },
  "sessions": {
    "count": 22000,
    "max-outstanding": 800,
    "start-rate": 400,
    "stop-rate": 400,
    "reconnect": true,
    "monkey-autostart": false
  },
  "pppoe": {
    "discovery-timeout": 3,
    "discovery-retry": 10,
    "host-uniq": true,
    "vlan-priority": 6,
    "reconnect": true
  },
  "ppp": {
    "mru": 1492,
    "authentication": {
      "username": "l2tp4@rtbrick.com",
      "password": "test",
      "timeout": 1,
      "retry": 60
    }
  },
  "access-line": {
    "agent-remote-id": "DEU.RTBRICK.{session-global}",
    "agent-circuit-id": "0.0.0.0/0.0.0.0 eth 0:{session-global}",
    "rate-up": 2000,
    "rate-down": 16384,
    "dsl-type": 5
  },
  "dhcp": {
    "enable": true
  },
  "dhcpv6": {
    "enable": true
  },
  "l2tp-server": [
    {
      "name": "LNS1",
      "address": "192.168.131.11",
      "secret": "test1",
      "receive-window-size": 64,
      "data-length": false,
      "data-offset": false,
      "data-control-priority": true,
      "data-control-tos": 224
    },
    {
      "name": "LNS2",
      "address": "192.168.131.12",
      "secret": "test2",
      "receive-window-size": 64,
      "data-length": true,
      "data-offset": false,
      "data-control-priority": true,
      "data-control-tos": 224
    },
    {
      "name": "LNS3",
      "address": "192.168.131.13",
      "secret": "test3",
      "receive-window-size": 64,
      "data-length": false,
      "data-offset": true,
      "data-control-priority": true,
      "data-control-tos": 224
    },
    {
      "name": "LNS4",
      "address": "192.168.131.14",
      "secret": "test4",
      "receive-window-size": 64,
      "data-length": true,
      "data-offset": true,
      "data-control-priority": true,
      "data-control-tos": 224
    }
  ],
  "streams": [
    {
      "name": "ipv4",
      "stream-group-id": 1,
      "type": "ipv4",
      "direction": "both",
      "length": 1000,
      "pps": 1
    },
    {
      "name": "ipv6",
      "stream-group-id": 1,
      "type": "ipv6",
      "direction": "both",
      "length": 1000,
      "pps": 1
    },
    {
      "name": "ipv6pd",
      "stream-group-id": 1,
      "type": "ipv6pd",
      "direction": "both",
      "length": 1000,
      "pps": 1
    },
    {
      "name": "ipv4",
      "stream-group-id": 2,
      "type": "ipv4",
      "direction": "both",
      "length": 1000,
      "pps": 1
    }
  ],
  "ldp": [
    {
      "instance-id": 1,
      "lsr-id": "192.1.0.6",
      "keepalive-time": 30,
      "raw-update-file": "/home/supervisor/ldp_1000.ldp"
    }
  ],
  "isis": [
    {
      "instance-id": 1,
      "area": [
        "49.0002/24"
      ],
      "system-id": "0204.0000.0001",
      "router-id": "192.1.0.6",
      "hostname": "BBL-RR",
      "hello-padding": true,
      "teardown-time": 30,
      "external": {
        "mrt-file": "/home/supervisor/isis_1000.mrt",
        "auto-refresh": true,
        "connections": [
          {
            "system-id": "0300.1001.0001",
            "l1-metric": 10
          }
        ]
      }
    }
  ],
  "bgp": [
    {
      "__comment__": "RR1-C1-IPv4",
      "network-interface": "SN-11-B3",
      "local-ipv4-address": "192.168.0.10",
      "peer-ipv4-address": "192.168.200.1",
      "raw-update-file": "/home/supervisor/ipv4_nlri_nh1.bgp",
      "local-as": 4200000001,
      "peer-as": 4200000001
    },
    {
      "__comment__": "RR1-C1-IPv6",
      "network-interface": "SN-11-B3",
      "local-ipv4-address": "192.168.0.20",
      "peer-ipv4-address": "192.168.200.1",
      "raw-update-file": "/home/supervisor/ipv6_nlri_nh1.bgp",
      "local-as": 4200000001,
      "peer-as": 4200000001
    },
    {
      "__comment__": "RR2-C1-IPv4",
      "network-interface": "SN-11-B3",
      "local-ipv4-address": "192.168.0.30",
      "peer-ipv4-address": "192.168.200.1",
      "raw-update-file": "/home/supervisor/ipv4_nlri_nh2.bgp",
      "local-as": 4200000001,
      "peer-as": 4200000001
    },
    {
      "__comment__": "RR2-C1-IPv6",
      "network-interface": "SN-11-B3",
      "local-ipv4-address": "192.168.0.40",
      "peer-ipv4-address": "192.168.200.1",
      "raw-update-file": "/home/supervisor/ipv6_nlri_nh2.bgp",
      "local-as": 4200000001,
      "peer-as": 4200000001
    },
    {
      "__comment__": "RR3-C1-IPv4",
      "network-interface": "SN-11-B3",
      "local-ipv4-address": "192.168.0.50",
      "peer-ipv4-address": "192.168.200.1",
      "raw-update-file": "/home/supervisor/ipv4_nlri_nh2.bgp",
      "local-as": 4200000001,
      "peer-as": 4200000001
    },
    {
      "__comment__": "RR3-C1-IPv6",
      "network-interface": "SN-11-B3",
      "local-ipv4-address": "192.168.0.60",
      "peer-ipv4-address": "192.168.200.1",
      "raw-update-file": "/home/supervisor/ipv6_nlri_nh2.bgp",
      "local-as": 4200000001,
      "peer-as": 4200000001
    }
  ]
}

Steps to reproduce the behavior:

  1. Bring up IPoE/PPoE/PPPoE over L2TP subscribers.
  2. Restart the BNG.
  3. Check if IPoE/PPoE/PPPoE over L2TP subscribers get re-established back again

Expected behavior

All IPoE/PPPoE/PPPoE over L2TP should all get re-established back again.

Screenshots

If applicable, add screenshots to help explain your problem.

Additional context

Add any other context about the problem here.

GIC-de commented 6 months ago

Fixed with 0.8.46.