Networking Modes. TOBY-L2 series. Application Note. Abstract

Similar documents
Prestige 310. Cable/xDSL Modem Sharing Router. User's Guide Supplement

! encor en etworks TM

OSBRiDGE 5XLi. Configuration Manual. Firmware 3.10R

Windows Embedded OS USB Driver Installation

1:1 NAT in ZeroShell. Requirements. Overview. Network Setup

TCP/IP Network Essentials. Linux System Administration and IP Services

Guide to Network Defense and Countermeasures Third Edition. Chapter 2 TCP/IP

ProSafe Plus Switch Utility

LAB THREE STATIC ROUTING

Packet filtering with Linux

Configuring a BANDIT Product for Virtual Private Networks

Quectel Cellular Engine

BR Load Balancing Router. Manual

Multi-Homing Security Gateway

Troubleshooting Tools

Internet Firewall CSIS Packet Filtering. Internet Firewall. Examples. Spring 2011 CSIS net15 1. Routers can implement packet filtering

Mobile IP. Bheemarjuna Reddy Tamma IIT Hyderabad. Source: Slides of Charlie Perkins and Geert Heijenk on Mobile IP

Linux Firewalls (Ubuntu IPTables) II

Chapter 4 Customizing Your Network Settings

DSL-2600U. User Manual V 1.0

IP - The Internet Protocol

Issue 2EN. Nokia and Nokia Connecting People are registered trademarks of Nokia Corporation

UIP1868P User Interface Guide

his document discusses implementation of dynamic mobile network routing (DMNR) in the EN-4000.

Quick Note 53. Ethernet to W-WAN failover with logical Ethernet interface.

Load Balancing Router. User s Guide

Nokia and Nokia Connecting People are registered trademarks of Nokia Corporation

EMG Ethernet Modbus Gateway User Manual

Internet Protocol (IP) IP - Network Layer. IP Routing. Advantages of Connectionless. CSCE 515: Computer Network Programming IP routing

Nokia for Business. Nokia and Nokia Connecting People are registered trademarks of Nokia Corporation

Interconnection of Heterogeneous Networks. Internetworking. Service model. Addressing Address mapping Automatic host configuration

IP Address: the per-network unique identifier used to find you on a network

Craig Pelkie Bits & Bytes Programming, Inc. craig@web400.com

Innominate mguard Version 6

Chapter 1 Connecting Your Router to the Internet

Management Software. Web Browser User s Guide AT-S106. For the AT-GS950/48 Gigabit Ethernet Smart Switch. Version Rev.

Guideline for setting up a functional VPN

Chapter 4 Customizing Your Network Settings

Prestige 202H Plus. Quick Start Guide. ISDN Internet Access Router. Version /2004

Note: This case study utilizes Packet Tracer. Please see the Chapter 5 Packet Tracer file located in Supplemental Materials.

THE HONG KONG POLYTECHNIC UNIVERSITY Department of Electronic and Information Engineering

Technical Support Information Belkin internal use only

SonicOS 5.9 / / 6.2 Log Events Reference Guide with Enhanced Logging

ADSL MODEM. User Manual V1.0

DSL-G604T Install Guides

Broadband Router ESG-103. User s Guide

Dynamic Host Configuration Protocol (DHCP) 02 NAT and DHCP Tópicos Avançados de Redes

FAQs: MATRIX NAVAN CNX200. Q: How to configure port triggering?

HP Intelligent Management Center v7.1 Virtualization Monitor Administrator Guide

Configure WAN Load Balancing

AS/400e. TCP/IP routing and workload balancing

Broadband Phone Gateway BPG510 Technical Users Guide

SwiftBroadband and IP data connections

Firewalls. Chien-Chung Shen

enetworks TM IP Quality of Service B.1 Overview of IP Prioritization

Chapter 2 Preparing Your Network

bintec Workshop WAN Partner Configuration Copyright November 8, 2005 Funkwerk Enterprise Communications GmbH Version 0.9

Protecting and controlling Virtual LANs by Linux router-firewall

Evaluation guide. Vyatta Quick Evaluation Guide

Static and Dynamic Network Configuration

LOHU 4951L Outdoor Wireless Access Point / Bridge

Computer Networks. Lecture 3: IP Protocol. Marcin Bieńkowski. Institute of Computer Science University of Wrocław

Linux Routers and Community Networks

+ iptables. packet filtering && firewall

Link Layer Discovery Protocol

Load Balancer LB-2. User s Guide

Table of Contents. Cisco Cisco VPN Client FAQ

Networking Security IP packet security

Chapter 5 Customizing Your Network Settings

3.1 RS-232/422/485 Pinout:PORT1-4(RJ-45) RJ-45 RS-232 RS-422 RS-485 PIN1 TXD PIN2 RXD PIN3 GND PIN4 PIN5 T PIN6 T PIN7 R+ PIN8 R-

Load Balancing Trend Micro InterScan Web Gateway

PCoIP Infrastructure Deployment Guide. TER Issue 1

Configuration Guide. DHCP Server. LAN client

8.2 The Internet Protocol

FBR Multi-WAN VPN Router. User Manual

Guide to TCP/IP, Third Edition. Chapter 3: Data Link and Network Layer TCP/IP Protocols

Lecture Computer Networks

Step-by-Step Guide for Setting Up IPv6 in a Test Lab

Multifunctional Broadband Router User Guide. Copyright Statement

Application Notes for Configuring a SonicWALL VPN with an Avaya IP Telephony Infrastructure - Issue 1.0

ERserver. iseries. TCP/IP routing and workload balancing

Deployment Guide: Transparent Mode

User Manual. Page 2 of 38

User Manual. Onsight Management Suite Version 5.1. Another Innovation by Librestream

Quick Installation Guide DSL-2750U/NRU. 3G/ADSL/Ethernet Router with Wi-Fi and Built-in Switch

Chapter 11 Network Address Translation

RedRapid X WIRELESS MODEM ROUTER. Quick Installation Guide (DN-7060)

Quick Installation Guide DSL-2750U. 3G/ADSL/Ethernet Router with Wi-Fi and Built-in Switch

IPv6 in Axis Video Products

Canon WFT-E1 (A) Wireless File Transmitter. Network Support Guide

Chapter 12 Supporting Network Address Translation (NAT)

WiFi Cable Modem Router C3700

Zeroshell HOWTO. The multifunctional OS created by How to secure my private network

Deploy the ExtraHop Discover Appliance with Hyper-V

ReadyNAS Setup Manual

Intelligent Power Protector User manual extension for Microsoft Virtual architectures: Hyper-V 6.0 Manager Hyper-V Server (R1&R2)

Broadband Bandwidth Controller

Lab Objectives & Turn In

Load Balancing Sophos Web Gateway. Deployment Guide

Transcription:

etworking Modes TOBY-L2 series Application ote Abstract This document describes the two operational modes of the TOBY-L2 module and how to provide connectivity to customer modems. www.u-blox.com UBX-14000479-03

Document nformation Title etworking Modes Subtitle TOBY-L2 series Document type Application ote Document number UBX-14000479 evision and date 03 17-Jul-2015 Document status Early Production nformation Document status explanation Objective Specification Document contains target values. evised and supplementary data will be published later. Advance nformation Document contains data based on early testing. evised and supplementary data will be published later. Early Production nformation Document contains data from product verification. evised and supplementary data may be published later. Production nformation Document contains the final product specification. This document applies to the following products: Product name TOBY-L2 series u-blox reserves all rights to this document and the information contained herein. Products, names, logos and designs described herein may in whole or in part be subject to intellectual property rights. eproduction, use, modification or disclosure to third parties of this document or any part thereof without the express permission of u-blox is strictly prohibited. The information contained herein is provided as is and u-blox assumes no liability for the use of the information. o warranty, either express or implied, is given, including but not limited, with respect to the accuracy, correctness, reliability and fitness for a particular purpose of the information. This document may be revised by u-blox at any time. For most recent documents, please visit www.u-blox.com. Copyright 2015, u-blox AG u-blox is a registered trademark of u-blox Holding AG in the EU and other countries. UBX-14000479-03 Page 2 of 37

Contents Contents... 3 1 ntroduction... 5 2 Bridge mode... 6 2.1 General description... 6 2.2 DTE connectivity... 7 2.2.1 Pv4... 7 2.2.2 Pv6... 7 2.3 Connection Manager development guidelines... 8 3 outer mode... 11 3.1 General description... 11 3.2 DTE connectivity... 12 3.2.1 Pv4... 12 3.2.2 Pv6... 12 3.3 Conflicts between DS private network and cellular network in router mode... 13 3.4 How to set the port forwarding on the module in router mode... 14 4 DS throughput issue on a Linux system... 15 5 Additional information... 16 5.1 AT commands examples... 16 5.1.1 Operational mode switch +UBMCOF... 16 5.1.2 Target P configuration +UPCOF... 16 5.1.3 P configuration of the PDP contexts/eps bearer +UPADD... 17 5.1.4 P tables configuration (router mode) +UPTABLES... 18 5.1.5 Static routes configuration (router mode) +UPOUTE... 19 5.1.6 USB interface profile configuration +UUSBCOF... 20 5.2 Dial-up connection... 23 5.2.1 Dial-up PPP configuration on Linux systems... 25 5.2.2 Dial-up PPP configuration on Windows systems... 26 5.3 Local dial-up connection... 28 5.4 Multiple PDP contexts/eps bearers... 29 5.4.1 Module cellular connectivity in relation to the USB interface profile and networking mode... 30 Appendix... 31 A P subsystem configuration... 31 A.1 Pv4 interface configuration in Windows OS... 31 A.2 Pv4 interface configuration in Linux OS... 31 A.3 Pv6 interface configuration in Windows OS... 32 A.4 Pv6 interface configuration in Linux OS... 32 UBX-14000479-03 Early Production nformation Contents Page 3 of 37

B outer/bridge mode configuration in Linux... 34 C List of acronyms... 35 elated documents... 36 evision history... 36 Contact... 37 UBX-14000479-03 Early Production nformation Contents Page 4 of 37

1 ntroduction TOBY-L2 is a multi adio Access Technology (AT) module capable of operating in 2G, 3G and 4G mobile networks. egardless of the currently selected AT, the packet switched connectivity over the USB virtual Ethernet interface may be established in two different networking modes: Bridge mode: the P termination of the data connectivity is on the customer s application processor and the module acts as a bridge device (similar to a USB dongle). outer mode: the P termination is placed on the module itself. n this configuration the data connectivity of the customer s application processor is provided through routing procedures. The module is operating as a mobile router. This document describes the two operating modes and how the P connectivity is provided. n addition, the document provides additional information regarding: Development strategies for a reference Connection Manager useful in bridge mode. Description of the AT (etwork Address Translation) configuration useful in router mode. Description of the Pv6 configuration in bridge mode. Dial-up Pv4 configuration. How to increase the throughput on Linux OS. For the sake of clarity, the u-blox cellular module is also referred to as the target, while the device connected to it is called the DTE (Data Terminal Equipment). The physical connection between the target and the DTE is established through the USB interface, which supports different logical interfaces (DS, CDC-ECM and CDC-ACM). The following symbols are used to highlight important information within the document: An index finger points out key information pertaining to module integration and performance. A warning symbol indicates actions that could negatively impact or damage the module. UBX-14000479-03 Early Production nformation ntroduction Page 5 of 37

2 Bridge mode 2.1 General description n bridge mode the target acts as a bridge device between the mobile network and the DTE: the P termination of the data connection is placed on the DTE network subsystem. For each active PDP context or EPS bearer, the DTE assigns (i.e. binds ) the P address to its USB virtual Ethernet interface and configures its routing rules. Each P address associated with an active PDP context/eps bearer is granted to the target by the mobile network, and it shall be retrieved through appropriate AT commands. 8.8.8.8 Cellular module nternet WA DS P Stack AT GGS DTE Mobile WA V T...... V T D S 2.6.123.54 Figure 1: Bridge mode, single PDP context 8.8.8.8 nternet WA Cellular module DS P Stack AT GGS2 DTE GGS1 Mobile WA V T...... V T D S 120.34.86.3 2.6.123.54 Figure 2: Bridge mode, multiple PDP contexts UBX-14000479-03 Early Production nformation Bridge mode Page 6 of 37

Since several PDP context/eps bearers can be activated, multiple P addresses can be specified on the same physical interface by the use of interface aliases in Windows based systems and/or virtual interfaces in Linux based systems. The target is able to handle up to 8 different PDP contexts/eps bearers. 2.2 DTE connectivity This section explains how the DTE s network interfaces shall be configured to obtain connectivity through an active PDP context/eps bearer. The steps for the configuration of Windows and Linux based systems are described. Finally, guidelines for the implementation of a Connection Manager application are provided. The description covers both Pv4 and Pv6 addressing. Appendix A provides additional information on the configuration commands used in Windows and Linux systems. 2.2.1 Pv4 n bridge mode, the configuration of the DTE s network interfaces shall be performed manually because the automatic configuration through DHCP (Dynamic Host Configuration Protocol) server is not supported. See u-blox AT commands manual [1] for a detailed AT commands description and AT commands examples Application ote [2] for more examples on Pv4 configuration. Perform the following steps for the configuration of every active PDP context/eps bearer: 1. The DTE must retrieve the associated P address with +CGPADD or +CGDCOT, or +CGCOTDP AT commands. 2. The DTE must assign the retrieved P address to its USB virtual Ethernet interface as an alias. 3. The DTE must retrieve the network assigned DS server addresses with +CGCOTDP AT command. 4. n case of multiple active primary PDP contexts (each with its own P address), each application running on the DTE should bind to a specific P alias, to let the target forward the P traffic to the desired PDP context. 5. The target creates a USB virtual Ethernet interface in order to reply to AP requests. The configured P address has only local meaning. The DTE must retrieve this information with +UPADD AT command. 6. The DTE shall add a routing rule for its USB virtual Ethernet in order to ensure connectivity over the USB link. The gateway P address of this rule must be the P address retrieved at previous step. See Appendix A.1 and Appendix A.2 for additional information. 2.2.2 Pv6 For a detailed description of link local and global address see appendix A. The local connectivity is ensured by the automatic configuration of the link local address. The target s link local address is automatically set and can be retrieved with +UPCOF. The global connectivity is ensured by the global address, which should be univocal. The global address consists of 128 bits, where the 64 bit long prefix is granted by the mobile network and the 64 bit long suffix is obtained from the less significant bits of the link local address. n general terms, the global connectivity configuration of the network node shall be performed automatically by the Pv6 network through the use of DHCPv6 and/or Pv6 eighbor Discovery Protocol (DP), or manually by the user. Typically, the DCHPv6 is not supported on mobile networks; hence only two cases shall be analyzed. The Pv6 auto configuration with the DP is performed within the handshake of outer Solicitation (S) / outer Advertisement (A) and eighbor Solicitation (S) / eighbor Advertisement (A) messages. All this messages are encapsulated into CMPv6 packets. The network node is broadcasting S to locate routers on the connected link, while the routers are responding with the A. The A message provides the prefix of the announced network. The network node is also broadcasting S messages to determine the other nodes on the same physical link. These nodes shall be reached within link local addresses. The S/A handshake is equivalent to the Pv4 Address esolution Protocol (AP). UBX-14000479-03 Early Production nformation Bridge mode Page 7 of 37

f the mobile network supports the Pv6 auto-configuration then the following steps must be followed for each successful PDP context activation: The outer Advertisement sent from the mobile network is forwarded to the USB virtual Ethernet interface of the DTE. The DTE processes the A message and configures its global address and its routing rules. f the procedure is correctly completed then the host is provided with a global Pv6 address and with the Pv6 address (global or local) of the next-hop router. Optionally the A message can provide DS server addresses. f present then the DTE shall apply the DS configuration, otherwise the DTE should perform manual configuration. f the mobile network does not support DP then the DTE must perform a manual configuration for the global Pv6 address, next-hop address and DS address for each successful PDP context activation: The prefix of the global address should be equal to the first 64 bits of the P address retrieved with +CGPADD AT command. The suffix should be equal to the last 64 bits of the USB virtual Ethernet interface link local address. The Pv6 address of the DS server should be set. The user can choose between the set of the world-wide known DS servers and addresses provided by the command +CGCOTDP. The default route should be created toward a fake PV6 address on the same network in order to forward the internet traffic on the USB link. To prevent continuous transmission of eighbor Solicitation messages to this fake address the DTE should add it to its Pv6 neighbor list. 2.3 Connection Manager development guidelines The main tasks of the Connection Manager application running on the DTE are: Monitor the status of the PDP contexts/eps bearers. Set up the P configuration of the virtual interface for the activated PDP contexts (P, gateway, DS, routing rules). Unset the P configuration of the virtual interface for the deactivated PDP contexts (P, gateway, DS, routing rules). Three different implementation strategies for a Connection Manager are defined: basic, smart and hybrid. Appendix A provides some examples of commands for setting P address, gateway and DS on Windows and Linux OS. n bridge mode: The +UPADD AT command retrieves the gateway P of an active PDP context. The +CGDCOT AT command retrieves the PDP context P. The <cid> of a mobile terminated context/bearer is assigned according to the rules below: o Primary context (2G/3G) or default bearer (4G): first <cid> not defined in the ordered list = [4, 3, 2,1, 8, 7, 6, 5] o Secondary context (2G/3G) or dedicated bearer (4G): first <cid> not defined in the ordered list = [8, 7, 6, 5, 1, 2, 3, 4] Some network operators on their data networks support a MTU (maximum transmission unit) smaller than the standard 1500 bytes. n such cases then the P data flow will incur P fragmentation, thus lowering the throughput performance. n a network requiring a lower MTU then the customer should change his operating system to apply the new value over the virtual USB Ethernet link. UBX-14000479-03 Early Production nformation Bridge mode Page 8 of 37

2.3.1.1 Basic implementation The Connection Manager (CM) configures the DTE by taking into account the status of each PDP context/eps bearer, retrieved with +CGDCOT and +CGACT AT commands. The Connection Manager must properly set the P, gateway and DS addresses for the DS and CDC-ECM interface aliases/virtual interfaces. Once the PDP context/eps bearers are activated and the configuration is set, the Connection Manager must periodically poll the target to eventually update the settings or to track changes of the PDP contexts state, caused e.g. by the deactivation of PDP contexts commanded by the network due to roaming or temporary network s issues. The following list of instructions can be used as reference for the implementation on Pv4 based networks: n 2G/3G: define a PDP context with +CGDCOT AT command and activate it with +CGACT AT command. n 4G: the default initial PDP context is automatically activated during attach and it can be defined with AT+UCGDFLT AT command. Periodically poll the PDP contexts state (e.g. 5 s) with +CGACT read command (polling shall be maintained as long as the CM application is running). When the PDP context is active, get the needed P address with +CGPADD, +CGCOTDP and +UPADD AT commands. Set up the OS with P alias/virtual interfaces, routing rules and DS configuration. f the PDP context is deactivated (it can be inferred by the information text response to the +CGACT read command) then remove all the settings for the related interface alias/virtual interface. n the case of Pv6 based context the following instructions can be performed: f the mobile network supports DP then set the DS server if the DS server is not present in the A. n the case the network in not sending A: o Find out the prefix granted by the mobile network with the AT command +CGPADD. o Set the global Pv6 of the DTE: upper 64 bits of the network prefix plus the lower 64 bits of link local address of the context. Since the link local address of the context is associated with a virtual interface, its link local address is always equal to fe80::200:ff:fe00:0/64. The lower part of the link local address correspond to 200:ff:fe00:0. o Set the DS servers. o To prevent continuous S transmissions, set a route to a fake neighbor on the DTE and insert its address into the Pv6 neighbor list. 2.3.1.2 Smart implementation This solution is event-driven: the Connection Manager application relies on UC notifications issued by the target at the AT interface to track the changes of the connectivity through the mobile network. The following list of instructions can be used as reference: n 2G/3G: define a PDP context with +CGDCOT and activate it with +CGACT AT commands. n 4G: the default initial PDP context is automatically activated during attach. t can be defined with AT+UCGDFLT. Enable the UC of +CGEG,+CEEG, and +CGEEP AT commands. Activate a PDP context with +CGACT AT command. Based on the UC issued by the target, handle the Pv4 and/or Pv6 configurations on the DTE. The activation of a context should trigger the configuration of the related interface alias/virtual interface, while the deactivation of a context should remove the configuration of the related interface alias/virtual interface. 2.3.1.3 Hybrid implementation This approach is a simultaneous combination of the previous two solutions: Apply the smart approach by enabling and handling the UC related to registration and connectivity events. UBX-14000479-03 Early Production nformation Bridge mode Page 9 of 37

Apply the basic approach as a safety net with an appropriate polling timer (e.g. 20 s). n this configuration the burden of the continuous polling mechanism is mitigated by the handling of the UC notifications. The polling mechanism with a larger timer offers a backup solution in case UC notifications are lost. UBX-14000479-03 Early Production nformation Bridge mode Page 10 of 37

3 outer mode 3.1 General description n the router mode, the P termination is on the target: the module acts as a mobile network router and it is able to share its data connectivity through a private network over the USB interface. 8.8.8.8 Cellular module Pv4 address Pv4 network mask Pv4 gateway DS server nternet WA DHCP DS GGS P Stack AT DTE Mobile WA V T...... V T D S 192.168.1.100 120.34.86.3 192.168.1.1 Figure 3: outer mode, single PDP context 8.8.8.8 Cellular module Pv4 address Pv4 network mask pv4 gateway DS server nternet WA DHCP DS GGS2 P Stack AT DTE GGS1 Mobile WA 120.34.86.3 V T...... V T D S 192.168.1.100 2.6.123.54 192.168.1.1 Figure 4: outer mode, multiple PDP contexts UBX-14000479-03 Early Production nformation outer mode Page 11 of 37

3.2 DTE connectivity This section provides information on how the DTE connectivity shall be configured in router mode. The description covers both Pv4 and Pv6 addressing. Appendix A provides additional information on the configuration commands used in Windows and Linux systems. 3.2.1 Pv4 n router mode the P termination is placed on the target. For each PDP context/eps bearer activation, the target creates an internal P interface and assigns it the P address of the activated PDP context/eps bearer. The configuration of each internal P interface can be retrieved with the +UPADD AT command. Because the target is running a DHCP server on the USB link, the configuration of the DTE s virtual Ethernet interface can be performed automatically using a DHCP client or manually by specifying a static P address. The P addresses of the virtual Ethernet interfaces of the target and of the DTE shall belong to the same private subnetwork to allow a two way communication. The DTE is not aware of the target s mobile connectivity state and should retrieve it with at the +CGACT? AT command or any other equivalent AT command. The DTE connectivity is achieved by forwarding the traffic between the target s USB virtual Ethernet interface and the internal P interfaces. The P traffic will be finally forwarded to an active PDP context/eps bearer based on the target s routing table. For each internal P interface, the target will create a routing rule: the PDP contexts are activated consequentially and the activation history is stored in the target. The default gateway is always associated with the PDP context/eps bearer that was activated first. Once this context/bearer is deactivated, the default gateway is reassociated with the next active PDP context/eps bearer reported in the activation history. The AT command +UPOUTE shall be used to define static routes towards a specific PDP context/eps bearer. The static routes may be set for a specific host P or a specific network segment (subnetwork). The configuration of the static routes is volatile and it is lost at the target reboot. The +UPCOF, +UPTABLES, +UPOUTE and +UPADD AT commands configure the AT, in this case port forwarding and P masquerading), firewall, routing and of the USB virtual Ethernet interface. Section 5.1 provides some reference examples. 3.2.2 Pv6 ot supported on TOBY-L2x0-00S. UBX-14000479-03 Early Production nformation outer mode Page 12 of 37

3.3 Conflicts between DS private network and cellular network in router mode Since several mobile providers use private network addressing, the cellular network may be in conflict with the private network associated with the USB virtual Ethernet interface. This may lead to an incorrect routing configuration. To avoid loss of connectivity, the module should be properly configured: Command esponse Description AT+UPCOF? +UPCOF: "10.18.130.1","255.255.255.0","10.18.130.100","10.18.1 30.254","FE80::2C60:20FF:FE56:2A 2D/64" etrieve the network configuration on the module USB virtual Ethernet interface. AT+UPADD= +UPADD: 1,"CCET0","5.168.120.242","255.255.255.255","","" +UPADD: 2,"CCET1","46.12.30. 162","255.255.255.255","","" etieve the network configuration on the PDP context/eps bearer. +UPADD: 4,"CCET3","10.18.130.248","255.255.255.255","","" AT+UPCOF="192.168.254.1","255. 255.255.0","192.168.254.100","19 2.168.254.100" f conflicts are present, the P network configuration of the USB virtual Ethernet interface shall be adjusted to provide a new P address/mask and a new range for the DHCP server running on the USB virtual Ethernet interface. AT+CFU=1,1 Finally, the module should be rebooted to make effective the applied changes. t is worth noticing that also the host P network configuration shall be verified and when needed adjusted (especially in the case of static addressing). UBX-14000479-03 Early Production nformation outer mode Page 13 of 37

3.4 How to set the port forwarding on the module in router mode To ensure that the DTE is reachable from the outside public network, port forwarding features shall be properly configured. For a proper configuration through +UPTABLES command, the following information shall be retrieved: the P address of the host <host_p> the port number on which the host is offering the service to the external network <host_port> the port number on which the target is listening <target_port> the protocol type used by the connection (e.g. 6 UDP protocol, 17 TCP protocol) <prot_num> n the following table some examples are provided: Example D AT command Explanation 1 AT+UPTABLES="-t nat -A PEOUTG -p <prot_num> -- dport <target_port> -i ccinet+ -j DAT --to <host_p>:<host_port>" 2 AT+UPTABLES="-t nat -D PEOUTG -p <prot_num> -- dport <target_port> -i ccinet+ -j DAT --to <host_p>:<host_port>" 3 AT+UPTABLES="-t nat -A PEOUTG -p <prot_num> -- dport < target_port> -i ccinet<cd-1> -j DAT --to <host_p>:<host_port>" 4 AT+UPTABLES="-t nat -A PEOUTG -p prot_num> -- dport < target_port> -i ccinet<cd-1> -j DAT --to <host_p>:<host_port>" Set port forwarding rules on all the PDP contexts/eps bearers. Unset port forwarding rules on all the PDP contexts/eps bearers. Set port forwarding rule on the PDP context/eps bearer number CD. <CD-1> means CD number minus 1. Unset port forwarding rule on the PDP context/eps bearer number CD. <CD-1> means CD number minus 1. To avoid unreliable behavior, the interface parameter shall be always specified in the port forwarding rules UBX-14000479-03 Early Production nformation outer mode Page 14 of 37

4 DS throughput issue on a Linux system On a Linux system, to reach the maximum throughput it is necessary to recompile the kernel. Apply the following modification in /kernel/drivers/net/usb/usbnet.c: eplace size_t size = dev->rx_urb_size; with size_t size = (16*1024); f it is not possible to recompile the kernel, then try to use CDC-ECM. As last resort try to use the following command: AT+UDCOF=67,0 This command disables the DS driver optimization and could mitigate the effects in router mode only. UBX-14000479-03 Early Production nformation DS throughput issue on a Linux system Page 15 of 37

5 Additional information This section focuses on useful features which are common for both networking modes. Examples are provided in the next subsections. For a complete description of the AT commands see the u-blox AT Commands Manual [1]. 5.1 AT commands examples This section will provide some examples on how to configure the network connectivity on the target through the AT commands. Some AT commands can be used in both networking modes (i.e. +UBMCOF, +UPCOF, +UPADD), while other AT commands are specific of each networking mode (i.e. +UPTABLES). 5.1.1 Operational mode switch +UBMCOF The networking mode can be set through the +UBMCOF command. The AT command +UBMCOF can also be used to identify the P networking mode in which the target is operating. The new setting will be effective after the module reboot. Command esponse Description AT+UBMCOF=1 Set the router networking mode. This is the default and factory-programmed value. AT+UBMCOF=2 Set the bridge networking mode. AT+UBMCOF? +UBMCOF:2 Get the networking mode. n the example the target is operating in bridge mode. 5.1.2 Target P configuration +UPCOF The USB virtual Ethernet interface of the target is provided with a private Pv4 address and a link local Pv6 address. The P addressing on the target can be configured through the +UPCOF AT command in both networking modes: n router mode, the +UPCOF command can configure or retrieve the private Pv4 address, the link local Pv6 address of the DS interface and the range of the addresses provided by the DHCP server. n bridge mode, the +UPCOF command can configure or retrieve the private Pv4 address of the USB virtual Ethernet interface (mainly for debugging purposes). Command esponse Description AT+UPCOF="192.168.2.1","255.255.255.0","192.168.2.100"," 192.168.2.100" n router mode: set the target P address to 192.168.2.1, the mask of the private network to 255.255.255.0, the first P address of the DHCP range to 192.168.2.100, and the last P address of the DHCP range to 192.168.2.100. Currently the platform allows only one client on the USB virtual Ethernet interface. n bridge mode: set the target P address to 192.168.2.1 and the mask of the private network to 255.255.255.0. Other parameters are ignored. UBX-14000479-03 Early Production nformation Additional information Page 16 of 37

Command esponse Description AT+UPCOF? +UPCOF: "192.168.5.1","255. 255.255.252","192.168.5.2","1 92.168.5.2","FE80::2C60:20FF: FE56:2A2D/64" n router mode: get the target P address 192.168.5.1, the mask of the private network 255.255.255.252, the first P address of the DHCP range 192.168.5.2, and the last P of the DHCP range 192.168.5.2. Due to the selected netmask, the range is limited to only one guest. The link local Pv6 address FE80::2C60:20FF:FE56:2A2D/64 is finally reported n bridge mode: get the target P address 192.168.5.1, and the mask of the private network 255.255.255.252. outer-mode specific parameters (e.g. DHCP range), if previously configured, are also displayed but should be discarded. 5.1.3 P configuration of the PDP contexts/eps bearer +UPADD The +UPADD command provides P addresses of the interfaces for the mobile network connectivity. However, it is not able to provide information on an interface operating in bridge mode which has been configured by the mobile network only with an Pv6 address and without the Pv4 address. The context D is the same contained in the information text response of the +CGACT and +CGDCOT read commands. Command esponse Description AT+UPADD= AT+UPADD= AT+UPADD=4 AT+UPADD=2 AT+UPADD=3 AT+UPADD=2 +UPADD: 1,"USB0:0","5.168.120.242","2 55.255.255.255","","" 4,"USB0:3","76.18.130.262","2 55.255.255.255","","" +UPADD: 1,"CCET0","5.168.120.242"," 255.255.255.255","","" 2,"CCET1","46.12.30.162","2 55.255.255.255","","" 4,"CCET3","76.18.130.262"," 255.255.255.255","","" +UPADD: 4,"USB0:3","76.18.130.262","2 55.255.255.255","","" +UPADD: 2,"CCET1","46.12.30.162","2 55.255.255.255","","" EO +UPADD: 2,"CCET1","","","2001::2:20 0:FF:FE00:0","FE80::200:FF:FE 00:0" n bridge mode: get the list of the active PDP contexts/eps bearers and associated P addresses. Two contexts are active. The first context has D 1 and is associated with the virtual interface USB0:0. ts P address is 5.168.120.242. The second context has D 4 and is associated with the virtual interface USB0:3. ts P address is 76.18.130.262. n router mode: get the list of the active PDP contexts/eps bearers. Three contexts are active. The first context has D 1 and is associated with the interface CCET0. ts P address is 5.168.120.242. The second context has D 2 and it is associated with the interface CCET1. ts P address is 46.12.30.162. The third context has D 4 and it is associated with the interface CCET3. ts P address is 76.18.130.262. n bridge mode: get the configuration of the active PDP context/eps bearer with D 4. This context is associated with the virtual interface USB0:3 and its P address is 76.18.130.262. n router mode: get the configuration of the active PDP context/eps bearer with D 2. This context is associated with the interface CCET1 and its P address is 46.12.30.162. n router mode the context with D 3 is not active; in bridge mode either the context with D 3 is not active or it is active but Pv4 address has not been assigned to it. n router mode: get the configuration of the active PDP context/eps bearer with D 2. This context is associated with the virtual interface CCT1 and its global Pv6 address is 2001::2:200:FF:FE00:0, while the local one is FE80::200:FF:FE00:0. UBX-14000479-03 Early Production nformation Additional information Page 17 of 37

Command esponse Description AT+UPADD=2 +UPADD: 2,"CCET1","46.12.30.162","2 55.0.0.0","","" n router mode: get the configuration of the active PDP context/eps bearer with D 2. This context is associated with the interface CCET1 and its P address is 46.12.30.162. 5.1.4 P tables configuration (router mode) +UPTABLES The +UPTABLES command can be used to modify the firewall and port forwarding configuration of the target. All the rules are immediately applied and are also stored in the VM (ot Volatile Memory). n case they shall be edited, it is recommended to delete the previously saved configuration with AT+UPTABLES=. Command esponse Description AT+UPTABLES="-L t nat" AT+UPTABLES="-A PEOUTG - t nat -i ccinet3 -p tcp -- dport 80 -j DAT --to 192.168.1.100:22" AT+UPTABLES="-A PUT -p tcp -m state --state EW --dport 80 -i ccinet3 -j ACCEPT" AT+UPTABLES="-A PUT -p tcp --destination-port 80 -j DOP" Chain PEOUTG (policy ACCEPT) target prot opt source destination Chain OUTPUT (policy ACCEPT) target prot opt source destination Chain POSTOUTG (policy ACCEPT) target prot opt source destination MASQUEADE 0 -- anywhere anywhere MASQUEADE 0 -- anywhere anywhere MASQUEADE 0 -- anywhere anywhere MASQUEADE 0 -- anywhere anywhere MASQUEADE 0 -- anywhere anywhere MASQUEADE 0 -- anywhere anywhere MASQUEADE 0 -- anywhere anywhere MASQUEADE 0 -- anywhere anywhere Get the rules of the nat table. The default table is filtered, hence the command -L is equivalent to -L t filter Both rules are required to set the port forwarding. The TCP traffic arriving on the port 80 of the interface ccinet3 is forwarded to the port 22 of the P 192.168.1.200. Set the blocking rule on the TCP traffic arriving on the port 80. AT+UPTABLES="-D PUT 6" Delete the 6-th rules of the chain PUT. AT+UPTABLES=" -A OUTPUT -p Block CMP echo-request. icmp --icmp-type 8 -j DOP" AT+UPTABLES Delete the stored configuration. UBX-14000479-03 Early Production nformation Additional information Page 18 of 37

5.1.5 Static routes configuration (router mode) +UPOUTE The +UPOUTE command can be used to create/modify the static routes of the target. All the rules are immediately applied and are not stored in the VM. f they need to be edited, it is recommended to delete the previous configuration. The +UPOUTE command may overwrite the default routing rule or may lead to the loss of connectivity. Command esponse Description AT+UPOUTE? +UPOUTE: Kernel P routing table Destination Gateway Genmask Flags Metric ef Use face 192.168.1.0 0.0.0.0 255.255.255.0 U 0 0 0 usb0 0.0.0.0 109.114.44.158 0.0.0.0 UG 0 0 0 ccinet0 Kernel Pv6 routing table Destination ext Hop Flags Metric ef Use face fe80::/64 :: U 256 0 0 usb0 fe80::/64 :: U 256 0 0 ccinet0 ::1/128 :: U 0 0 1 lo fe80::200:ff:fe00:0/128 :: U 0 0 1 lo fe80::74f0:e8ff:feb3:af51/128 :: U 0 0 1 lo ff00::/8 :: U 256 0 0 usb0 ff00::/8 :: U 256 0 0 ccinet0 Get the rules of the Pv4 and Pv6 routing table. AT+UPOUTE="" AT+UPOUTE="add -net 140.105.63.0 netmask 255.255.255.0 dev ccinet1" +UPOUTE: Kernel P routing table Destination Gateway Genmask Flags Metric ef Use face 192.168.1.0 * 255.255.255.0 U 0 0 0 usb0 default 37.182.69.142 0.0.0.0 UG 0 0 0 ccinet0 +UPOUTE: List of the Pv4 routing rules. The default route is set within the ccinet0 (CD 0). Set the static route for the 140.105.63.0/24 subnetwork towards the interface ccinet1 (CD 2) UBX-14000479-03 Early Production nformation Additional information Page 19 of 37

Command esponse Description AT+UPOUTE="del -net 140.105.63.0 netmask 255.255.255.0 dev ccinet1" AT+UPOUTE="add -host 151.9.34.82 dev ccinet2" AT+UPOUTE="del -host 151.9.34.82 dev ccinet2" AT+UPOUTE="del default" AT+UPOUTE="add default dev ccinet1" +UPOUTE: +UPOUTE: +UPOUTE: +UPOUTE: +UPOUTE: Delete the static route for the 140.105.63.0/24 subnetwork towards the interface ccinet1 (CD 2) Set the static route for the host 151.9.34.82 towards the interface ccinet1 (CD 2) Delete the static route for the host 151.9.34.82 towards the interface ccinet1 (CD 2) Delete the default route Set the default route towards the interface ccinet1 (CD 2) 5.1.6 USB interface profile configuration +UUSBCOF u-blox cellular modules provide several USB interface profiles. Each USB profile consists of some USB device classes, which differ from profile to profile. As mentioned before, each USB profile implies a set of USB function. Command esponse Description AT+UUSBCOF=? +UUSBCOF: (0 ("6 CDC- ACM"),(""),()),(2 ("ETWOK, 3 CDC-ACM"),("ECM"),()),(3 ("ETWOK, 1 CDC- ACM"),("DS"),()) Available USB profiles AT+UUSBCOF=0 Fairly back-compatible profile; the configuration only consists of six CDC-ACM. AT+UUSBCOF=2,"ECM" Low/Medium Throughput profile, the configuration includes a etwork USB function (CDC-ECM), and three CDC-ACM; the presence of several USB functions limits the reachable data transfer throughput AT+UUSBCOF=3,"DS" High Throughput profile (default configuration); the configuration includes a etwork USB function (DS), and only one CDC-ACM; the presence of only one CDC-ACM allows a higher data transfer throughput The fairly back-compatible profile is also referred as legacy profile. UBX-14000479-03 Early Production nformation Additional information Page 20 of 37

The following pictures show how the interface is recognized on Windows systems: 1. Legacy mode: Figure 5: Legacy mode on Wndows system The Windows system recognizes 6 CDC-ACM interfaces: 3 of them are AT command interface. The additional 3 CDC-ACM interfaces are used for special purposes: GPS Virtual Port, Mobile Diagnostic Virtual Port and SM Access Profile (SAP) Virtual Port. 2. CDC-ECM mode: Figure 6: CDC-ECM mode on Linux system The Linux system recognizes one CDC-ECM interface (eth1 interface in the list of network devices), and 3 CDC-ACM (3 AT command interface). UBX-14000479-03 Early Production nformation Additional information Page 21 of 37

3. DS mode: Figure 7: DS mode on Windows system The Windows system recognizes one DS interface and one CDC-ACM interface (AT command interface). The PPP connections may be established for every USB profile, since at least one CDC-ACM is available in every one. UBX-14000479-03 Early Production nformation Additional information Page 22 of 37

5.2 Dial-up connection The module is able to perform dial-up connections supporting the Point-to-Point Protocol (PPP). The Point-to- Point Protocol provides a standard method for transporting multi-protocol datagrams over point-to-point links. The PPP connection is established between the target and the DTE in both router and bridge modes. n particular, the target performs as the PPP server, while the DTE performs as the PPP client. The target supports both active and passive PPP negotiation modes. n active mode the server sends the first LCP Configuration equest message without waiting for the PPP client to do so, while in the passive mode the server waits for the PPP client to send the first LCP Configuration equest message before sending its own Configuration equest message. The target operates by default in passive mode. f the client does not send the first LCP packet within a given period (1 s), then the server (cellular module) will send the first LCP packet to the client. n particular, the value of the timeout is set to 1 s. f no LCP Configuration esponse is received the request is repeated for at most ten times. The LCP Configuration equest is sent every one second. t is worth noticing, that the number of dial-up connection depends on the active USB profile on the target. n the High Throughput Profile (AT+UUSBCOF=3,"DS") there is only one CDC-ACM interface, hence only one dial-up connection can be established. n the Low/Medium Throughput Profile (AT+UUSBCOF=2,"ECM") there are three CDC-ACM interfaces for AT commands and data, hence at most three dial-up connections can be established. n the Fairly back-compatible Profile (AT+UUSBCOF=0) there are six CDC-ACM interfaces, but only the three of them are available for AT commands and data, therefore at most three dial-up connections can be established. A PPP dial-up connection can be started on an already active PDP context/eps bearer only when the TOBY-L2 module is in the Fairly back-compatible Profile (USB profile defined with AT+UUSBCOF=0). n the case of the LTE networks, this implies that the initial default EPS bearer, which is always established at the time of attachment to the LTE network, is suitable for dial-up connections on the module. Also note that the already active PDP context/eps bearer should be provided with the network/internet connectivity so that the PPP also has the connectivity. n this case the activation of a PPP session over an already active CD will move to connectivity for the previous configuration to the PPP session. Depending on the network provider policy for LTE networks, the cellular connectivity configuration requests the use of the +UCGDFLT AT command. A dial-up acquires exclusive access to a PDP context: therefore it should be noted that activating a PPP session over an already active CD will disrupt connectivity for the previous user (if present). The following example refers to an attempt of dial-up connection when the module attached to a 4G network: 1. The module is in router mode. 2. The module is in Fairly back-compatible Profile and it has +UCGDFLT s AP configured for internet connectivity. 3. The TOBY-L2 P subsystem is configured to access the internet through the cellular network within an internal context. 4. The module registers on a LTE network: the initial PDP context is activated on CD 4. 5. The initial PDP context is providing connectivity for the TOBY-L2 P subsystem. 6. The dial-up session is started over the already active CD 4: o o The PPP session now has exclusive access to the initial PDP connectivity; The TOBY-L2 P subsystem has no access to the internet and it must be reconfigured to use a different PDP context (if possible). 7. n order to give internet connectivity to both PPP and TOBY-L2 P subsystem through the cellular network, two PDP contexts must be used. n addition, also a further example is provided for the case of the module attached to a 2G/3G network: 1. The module is in router mode. 2. The module is in Fairly back-compatible Profile and it is attached to a 2G/3G network. UBX-14000479-03 Early Production nformation Additional information Page 23 of 37

3. The TOBY-L2 P subsystem is configured to access the internet through the cellular network within an internal context (defined and activated). 4. The active PDP context is providing connectivity for the TOBY-L2 P subsystem. 5. The dial-up session is started over the already active context: o o The PPP session now has exclusive access to the initial PDP connectivity; The TOBY-L2 P subsystem has no access to the internet and it must be reconfigured to use a different PDP context (if possible). 6. n order to give internet connectivity to both PPP and TOBY-L2 P subsystem through the cellular network, two PDP contexts must be used. Figure 8 shows the dial-up connection in bridge mode and Low/Medium Throughput Profile, while Figure 9 shows the coexistence between one dial-up connection and two active PDP context/eps bearer when Fairly back-compatible Profile is active. 8.8.8.8 nternet WA DS P Stack AT DTE GGS PPP Mobile WA V T C D C - A C M 2.6.123.54 PPP Figure 8: Single PDP context with PPP (bridge mode) UBX-14000479-03 Early Production nformation Additional information Page 24 of 37

nternet WA 8.8.8.8 DHCP DS Pv4 address Pv4 network mask pv4 gateway DS server GGS3 GGS1 Mobile WA GGS2 V T V T AT D S.... P Stack V T PPP 192.168.1.100 120.34.86.3 2.6.123.54 192.168.1.1 C D C - A C M DTE PPP 240.74.36.9 Figure 9: 3 PDP contexts, one PPP (router mode) 5.2.1 Dial-up PPP configuration on Linux systems On Linux platforms the PPP connection shall be established with wvdial, which is a text-based dial-up application. The following configuration script shall be used to activate a PPP connection on the CD number <cid>. [Dialer Defaults] Modem Type = USB Modem SD = 0 nit1 = ATZ nit2 = AT+CGDCOT=<cid>,"P",<apn> Modem = /dev/ttyacm<x> Baud = 460800 Phone = *99***<cid># ; Username = <Login ame> ; Password = <Password> n the script, <cid> represents the cid on which the PPP connection should be activated, <apn> is the AP name of the configured context, and /dev/ttyacm<x> represents the name of the device recognized by the system. Some mobile operators could also request a login name and a password, <Login ame> and <Password> respectively. The semicolon, indicating that the line is a comment, should be removed to specify the login and password parameters. The application wvdial can be run with superuser privileges with the command wvdial. UBX-14000479-03 Early Production nformation Additional information Page 25 of 37

5.2.2 Dial-up PPP configuration on Windows systems On Windows systems, a new dial-up connection should be configured via the menu: Start > Control Panel > etwork and Sharing Center > Set up a new connection or network The configuration procedure requires the selection of the target (modem device) and the number to dial. On Windows systems the configuration of the context should be performed manually via AT command or through Windows modem properties. For example, to set the AP name on context 1 the user should specify the AT command: at+cgdcont=1,"p","<apn>" The final result of the configuration is shown in the following figures: UBX-14000479-03 Early Production nformation Additional information Page 26 of 37

Figure 10: Dial-up Connection Windows Figure 11: Properties > General tab Figure 12: Properties > etworking tab Figure 13: Properties > Options tab UBX-14000479-03 Early Production nformation Additional information Page 27 of 37

Figure 14: Properties > Security tab 5.3 Local dial-up connection TOBY-L2 modules support the local dial-up connection. This feature allows modules to establish an P-based connection with an external application processor through CDC-ACM, UAT or MUX interfaces. During the local dial-up, a point to point connection is created between the TOBY-L2 P stack and the external application processor P stack. The established connection is denoted by two P addresses belonging to the same private subnetwork. Two P addresses are required, one for each ending of the dial-up connection. The subnetwork, defined for the local dial-up, should be different from the subnetworks used for DS/CDC-ECM interfaces. The local dial-up assigns to the host also the DS server P address. The P address of the specified DS server is equal to the local dial-up P address of the target. n this configuration the target is performing as the DS server for the host. f a different DS server is requested, it should be defined by the customer during the P network configuration of the host. Figure 15 shows the P connections when the local dial-up feature is enabled on one MUX interface. The local dial-up feature can be used when: the external processor does not have an DS/CDC-ECM interface, and it is provided with an P stack the P connectivity between the UAT and DS/CDC-ECM interfaces is requested only one PDP context/eps bearer shall be used to provide internet connectivity to the external processor through the UAT or DS/CDC-ECM interfaces The ATD*99***100# command activates the local dial-up feature. The CD number 100 does not conflict with the CDs used for dial-up connections, which are related to PDP contexts/eps bearers. Follow these operations to obtain the internet connectivity on the external processor through two MUX interfaces: a) activate two MUX interfaces on UAT b) activate the local PPP on one of the virtual port by sending the ATD*99***100# command c) use the second virtual ports for sending AT commands UBX-14000479-03 Early Production nformation Additional information Page 28 of 37

d) activate one PDP context (+CGDCOT, +CGACT) or use the EPS bearer (+UCGDFLT): a. if after boot the module is registered on 4G network, check that the default bearer has P connectivity, if not, configure the AP with +UCGDFLT b. if after boot the module is registered on 3G or 2G network, define a PDP context (+CGDCOT) and activate it (+CGACT) 8.8.8.8 DHCP Pv4 address Pv4 network mask pv4 gateway DS server nternet WA DS AT P Stack DTE GGS1 Mobile WA V T D S.... PPP M U X U A T M U X PPP 192.168.10.2 192.168.1.100 120.34.86.3 192.168.10.1 192.168.1.1 Figure 15: Local dial-up connection on one MUX interface in router mode 5.4 Multiple PDP contexts/eps bearers n LTE, PS data connections are referred to as ESP bearers: EPS bearers are conceptually equivalent to the legacy PDP contexts, which are often referred to for the sake of simplicity. Similarly to a PDP context, the EPS bearer can be a default (primary) or dedicated (secondary) one. The initial EPS bearer established during LTE Attach procedure is actually a default EPS bearer. When attached to an LTE network with some mobile operators, it may occur that the activation of user-defined EPS default bearers is rejected by the network. n this case the connectivity may be granted by the default initial EPS bearer when it is configured as an initial PDP context (+UCGDFLT AT command) and using the module in route mode through the DS interface. Using the module in the Fairly back-compatible Profile, a PPP connection may be performed on an active default initial EPS bearer configured as an initial PDP context. Check the user-defined EPS bearers availability with the current mobile network operator. f the initial default EPS bearer is not suitable for internet connectivity, like on Verizon network where is it devoted to MS services, activate a second default EPS bearer with appropriate AP to enable PS data services. This can be automatically done by the module on Verizon network (see AT+UMOCOF command). n Verizon configuration, if the MS AP gives no P/Pv6 connectivity or the LTE attach fails, then the module will automatically select the internet AP and perform the LTE attach with it. UBX-14000479-03 Early Production nformation Additional information Page 29 of 37

5.4.1 Module cellular connectivity in relation to the USB interface profile and networking mode The module is able to handle a maximum of eight contexts. However, the context configuration depends on the USB interface profile and on the networking modes. As reported in section 5.1.6, the module offers three USB interface profiles: a fairly backwards-compatible profile, a low/medium throughput profile and a high throughput profile. n the first USB profile there are six CDC-ACM interfaces, but only three of them can be used for connectivity purposes. The second profile provides three CDC-ACM interfaces (all of them can be used for connectivity purposes) and one CDC-ECM interface. The last profile offers only one CDC-ACM interface and one DS interface. The TOBY-L2 module can operate in two different networking modes: router and bridge mode. The complete description is provided in sections 2 and 3. The context configuration is done accordingly to the networking mode. Furthermore, when the module is in bridge mode, the contexts can be reconfigured in router mode using the command +UDPDP. n this case the target becomes the context s owner to have internal connectivity. n both networking modes, the PPP connections are one-to-one to the number of available CDC-ACM interfaces used for connectivity purposes. Table 1 summarizes the configuration of the PDP contexts in relation to the USB profile and the networking mode. outer mode (AT+UBMCOF=1) Bridge mode (AT+UBMCOF=2) Fairly back-compatible profile (AT+UUSBCOF=0) 6 CDC-ACM (only 3 of 6 are for connectivity purposes) =1: max P=1:P max A=+P max =8* P max =3 A max =8 =1: max P=1:P max A=+P max =8* P max =3 A max =8 Low/Medium throughput profile (AT+UUSBCOF=2) 3 CDC-ACM 1 CDC-ECM =1: max P=1:P max A=+P max =8 P max =3 A max =8 =1: max P=1:P max B=1:B max A=+P+B max =8* P max =3 B max =8 A max =8 High throughput profile (AT+UUSBCOF=3) 1 CDC-ACM 1 DS =1: max P=1:P max A=+P max =8 P max =1 A max =8 =1: max P=1:P max B=1:B max A=+P+B max =8* P max =1 B max =8 A max =8 Table 1: Contexts configuration in relation to the USB profile and the networking mode where: = context in router mode max = maximum number of contexts in router mode P = PPP session (one to one to CDC-ACM interface) P max = maximum number of PPP sessions B = context in bridge mode B max = maximum number of contexts in bridge mode A = total number of contexts A max = maximum number of contexts * = the contexts are OLY available to the target UBX-14000479-03 Early Production nformation Additional information Page 30 of 37

Appendix A P subsystem configuration This appendix provides the most important shell commands needed to configure the P subsystem of a generic Windows and Linux operating system. This convention used in the following Pv4 examples is: A1.A2.A3.A4 denotes an Pv4 address abcx is the name of the interface in a Linux OS Y is the number of the virtual interface in Linux OS G1.G2.G3.G4 is the Pv4 gateway 1.2.3.4/M denotes an Pv4 subnetwork M is the size of the Pv4 subnetwork bit field M1.M2.M3.M4 is the mask in dotted decimal notation fname is the name of the interface under Windows fnum is the number of the interface under Windows and DS1 is the Pv4 address of the DS server in dotted-decimal notation Moreover, the Pv6 address is 128 bit long and it is subdivided in 64-bit prefix (PEFX_64) and 64-bit suffix (SUFFX_64). Each network device has its local Pv6 address, which typically looks like FE80::SUFFX_64, where FE80::/64 is the link local prefix (LKLOCAL_64). Each network interface sends a outer Solicitation message in order to find the next hop router. The next hop router will reply with a outer Advertisement message. The outer Advertisement message will contain the PEFX_64, which is used by the network interface to define its global Pv6 address (PEFX_64:SUFFX_64). The Pv6 gateway will have the GW_PEFX_64:GW_SUFFX_64 address, while Pv6_SUBET denotes a specific Pv6 subnetwork. A.1 Pv4 interface configuration in Windows OS Example D DOS command Explanation 1 netsh int ip add address name= fname addr=a1.a2.a3.a4 mask= M1.M2.M3.M4 2 netsh int ip del address name= fname addr=a1.a2.a3.a4 3 route ADD 0.0.0.0 MASK M1.M2.M3.M4 G1.G2.G3.G4 METC 1 F fnum Set the P address of the interface fname and of the virtual interface of fname Unset the P address of the interface fname and of the virtual interface of fname Set default gateway 4 route DELETE 0.0.0.0 G1.G2.G3.G4 Unset the default gateway 5 route ADD 1.2.3.4 MASK M1.M2.M3.M4 G1.G2.G3.G4 F Set a gateway for a specific network fnum 6 route DELETE 1.2.3.4 Unset a gateway for a specific network 7 netsh int ip add dns name= fname addr=ds1 Set a DS server 8 netsh int ip del dns name= fname addr= DS1 Unset a DS server A.2 Pv4 interface configuration in Linux OS Example D Bash command Explanation 1 ifconfig abcx A1.A2.A3.A4 Set the P address of the interface abcx 2 ifconfig abcx:y A1.A2.A3.A4 netmask M1.M2.M3.M4 pointopoint G1.G2.G3.G4 up or Set the P address of the virtual interface Y of abcx (in bridge mode see the note how to obtain gateway address). The keywords UBX-14000479-03 Early Production nformation Appendix Page 31 of 37

Example D Bash command Explanation ip addr add A1.A2.A3.A4/M peer G1.G2.G3.G4 dev abcx 3 route add default gw G1.G2.G3.G4 Set default gateway pointopoinit and peer enables the point-to-point mode of an interface, meaning that it is a direct link between two machines with nobody else listening on it 4 route del default Unset the default gateway 5 route add net 1.2.3.4/M gw G1.G2.G3.G4 Set a gateway for a specific network 6 route del net 1.2.3.4/M gw G1.G2.G3.G4 Unset a gateway for a specific network 7 echo nameserver DS1 >> /etc/resolv.conf Set a DS server A.3 Pv6 interface configuration in Windows OS Example D DOS command Explanation 1 netsh interface ipv6 add address fname LKLOCAL_64:SUFFX_64 2 netsh interface ipv6 add address fname PEFX_64:SUFFX_64 3 netsh interface ipv6 del address fname LKLOCAL_64:SUFFX_64 4 netsh interface ipv6 del address fname PEFX_64:SUFFX_64 5 netsh interface ipv6 add route Pv6_SUBET fname GW_PEFX_64:GW_SUFFX_64 6 netsh interface ipv6 del route Pv6_SUBET fname GW_PEFX_64:GW_SUFFX_64 Set the Pv6 link local address of the interface fname Set the Pv6 global address of the interface fname Unset the Pv6 link local address of the interface fname Unset the Pv6 global address of the interface fname Set gateway on the interface fname for subnetwork Pv6_SUBET Unset gateway on the interface fname for subnetwork Pv6_SUBET 7 netsh interface ipv6 add dnsserver fname DS-Pv6 Set a DS server on the interface fname 8 netsh interface ipv6 del dnsserver fname DS-Pv6 Unset a DS server on the interface fname 9 netsh interface ipv6 add neighbors fname ADOM- SUFFX_64 Prevent eighbor Discovery on the interface fname, by adding a neighbor with a random Pv6 address 10 netsh int ipv6 set privacy state=disabled/enabled Disable/enable Pv6 privacy extensions. Used with example D 11. 11 netsh interface ipv6 set global randomizeidentifiers=disabled store=active netsh interface ipv6 set global randomizeidentifiers=disabled store=persistent 12 netsh int ipv6 set interface "fname" routerdiscovery=disabled/enabled 13 netsh int ipv6 set interface "fname" advertise=disabled/enabled Disable random generation for nontemporary autoconfigured Pv6 addresses. The Pv6 addresses are based on EEE EU-64 Disable/enable sending outer Solicitation Disable/enable sending outer Advertisement With the netsh option store=active the changes are applied for the current session, while with the option store=persistent the changes are applied permanently. A.4 Pv6 interface configuration in Linux OS Example D Bash command Explanation 1 ip -6 addr add LKLOCAL_64:SUFFX_64 dev abcx Set the Pv6 link local address of the interface abcx 2 ip -6 addr add PEFX_64:SUFFX_64 dev abcx Set the Pv6 global address of the interface abcx 3 ip -6 addr del LKLOCAL_64:SUFFX_64 dev abcx Unset the Pv6 link local address of the interface abcx 4 ip -6 addr del PEFX_64:SUFFX_64 dev abcx Unset the Pv6 global address of the UBX-14000479-03 Early Production nformation Appendix Page 32 of 37

Example D Bash command Explanation 5 ip -6 route add Pv6_SUBET via GW_PEFX_64:GW_SUFFX_64 6 ip -6 route del Pv6_SUBET via GW_PEFX_64:GW_SUFFX_64 interface abcx 7 echo nameserver DS-Pv6 >> /etc/resolv.conf Set a DS server 8 delete the related row from the file Unset a DS /etc/resolv.conf 9 ip neigh add GW_PEFX_64:ADOM_SUFFX_64 lladdr ADOM_MAC_ADD dev abcx 10 ip neigh del GW_PEFX_64:ADOM_SUFFX_64 lladdr ADOM_MAC_ADD dev abcx Set gateway on the interface abcx Unset default gateway on the interface abcx n bridge mode on host side: prevent eighbor Discovery on the interface abcx, by adding a fictitious neighbor with a random Pv6 address n bridge mode on host side: delete the fictitious neighbor associated with the interface abcx 11 ip neigh show n bridge mode on host side: show the list of the neighbor 12 n /etc/radvd.conf: AdvSendAdvert off on Disable/enable sending outer Advertisement and outer Solicitation 13 sudo sysctl w net.ipv6.conf.all(abcx).autoconf=0 Autoconfigure addresses using prefix information from router advertisements 14 sudo sysctl w net.ipv6.conf.all(abcx).use_tempaddr=<value> Disable random generation for nontemporary autoconfigured Pv6 addresses. The Pv6 addresses are based on EEE EU-64. This option disable/enable Pv6 privacy extensions. <value> can be chosen from the following: <=0 Disable Privacy Extensions (i.e. do not use changing temporary addresses at all) ==1 Use the Privacy Extensions, but prefer public (i.e. non-temporary) addresses over temporary ones. >1 (e.g. 2 as here) Use the Privacy Extensions and prefer them. n the sysctl commands, all stands for all interfaces, while abcx stands for only for the abcx interface. UBX-14000479-03 Early Production nformation Appendix Page 33 of 37

B outer/bridge mode configuration in Linux The example setup has been performed on a Linux machine running Ubuntu 14.04 distribution. n outer mode the following setting shall be used in Linux: Open a terminal dentify the interface associated with the USB virtual Ethernet (i.e. usb1). nput ifconfig, the DS is not active yet nput dhcclient usb1 to configure the DHCP client, now the USB virtual Ethernet interface is active nput ifconfig and check that USB virtual Ethernet is active n Bridge mode the following setting shall be used in Linux: Precondition: a data context is already active on the module For example 100.87.53.78 is the P address obtained with +CGDCOT (or + CGCOTDP), usb1 is the interface associated to DS and 100.87.53.177 is the virtual P that is obtained with +UPADD Open a terminal nput killall dhclient nput ifconfig usb1 192.168.1.149 netmask 255.255.255.0 ping 192.168.1.1 (it is possible to ping the module) ping 8.8.8.8 (it will return an error because the routing rules are missing) ifconfig usb1:0 100.87.53.78 netmask 255.255.255.255 pointopoint 100.87.53.177 up (similar to alias in Windows, pointopoint sets up a two hosts network with the module) ping 8.8.8.8 (it will return an error because we need to specify how to route the traffic) route add default gw 100.87.53.177 ping 8.8.8.8 (it is possible to ping an external address) ifconfig usb1 down (it closes the DS interface) UBX-14000479-03 Early Production nformation Appendix Page 34 of 37

C List of acronyms Abbreviation / Term AP DHCP EPS Explanation / Definition Address esolution Protocol Dynamic Host Configuration Protocol Evolved Packet System Pv4 nternet Protocol version 4 Pv6 nternet Protocol version 6 MAC DP VM DS Media Access Control eighbor Discovery Protocol on Volatile Memory emote etwork Driver nterface Specification UBX-14000479-03 Early Production nformation Appendix Page 35 of 37

elated documents [1] u-blox AT Commands Manual, Docu o UBX-13002752 [2] u-blox AT Commands Examples Application ote, Docu o UBX-13001820 [3] Charles M. Kozierok The TCP/P Guide o Starch Press [4] Andrew S. Tanenbaum Computer etworks (5th Edition) Prentice Hall [5] FC 2131, Dynamic Host Configuration Protocol, https://www.ietf.org/rfc/rfc2131.txt [6] FC 1661 The Point-to-Point Protocol (PPP), ftp://ftp.rfc-editor.org/in-notes/rfc1661.txt [7] FC 4861 eighbor Discovery for P version 6 (Pv6), ftp://ftp.rfc-editor.org/in-notes/rfc4861.txt [8] FC 4862 Pv6 Stateless Address Autoconfiguration, ftp://ftp.rfc-editor.org/in-notes/rfc4862.txt [9] FC 5072, P Version 6 over PPP, ftp://ftp.rfc-editor.org/in-notes/rfc5072.txt [10] FC 5075 Pv6 outer Advertisement Flags Option, ftp://ftp.rfc-editor.org/in-notes/rfc5075.txt [11] FC 6106 Pv6 outer Advertisement Options for DS Configuration ftp://ftp.rfc-editor.org/in-notes/rfc6106.txt [12] FC 6459 Pv6 in 3rd Generation Partnership Project (3GPP) Evolved Packet System (EPS), ftp://ftp.rfc-editor.org/in-notes/rfc6459.txt For regular updates to u-blox documentation and to receive product change notifications please register on our homepage. evision history evision Date ame Status / Comments 01 29-Oct-2014 ador nitial release 02 30-Jan-2015 mace Added some suggestion on Connection Manager development and kernel recompiling 03 17-Jul-2015 mace Added local PPP description UBX-14000479-03 Early Production nformation elated documents Page 36 of 37

Contact For complete contact information visit us at www.u-blox.com u-blox Offices orth, Central and South America u-blox America, nc. Phone: +1 703 483 3180 E-mail: info_us@u-blox.com egional Office West Coast: Phone: +1 408 573 3640 E-mail: mailto:info_us@u-blox.com Technical Support: Phone: +1 703 483 3185 E-mail: mailto:support_us@u-blox.com Headquarters Europe, Middle East, Africa u-blox AG Phone: +41 44 722 74 44 E-mail: info@u-blox.com Support: mailto:support@u-blox.com Asia, Australia, Pacific u-blox Singapore Pte. Ltd. Phone: +65 6734 3811 E-mail: info_ap@u-blox.com Support: support_ap@u-blox.com egional Office Australia: Phone: +61 2 8448 2016 E-mail: info_anz@u-blox.com Support: support_ap@u-blox.com egional Office China (Beijing): Phone: +86 10 68 133 545 E-mail: info_cn@u-blox.com Support: support_cn@u-blox.com egional Office China (Shenzhen): Phone: +86 755 8627 1083 E-mail: info_cn@u-blox.com Support: support_cn@u-blox.com egional Office ndia: Phone: +91 959 1302 450 E-mail: mailto:info_in@u-blox.com Support: mailto:support_in@u-blox.com egional Office Japan: Phone: +81 3 5775 3850 E-mail: info_jp@u-blox.com Support: support_jp@u-blox.com egional Office Korea: Phone: +82 2 542 0861 E-mail: info_kr@u-blox.com Support: support_kr@u-blox.com egional Office Taiwan: Phone: +886 2 2657 1090 E-mail: info_tw@u-blox.com Support: support_tw@u-blox.com UBX-14000479-03 Early Production nformation Contact Page 37 of 37