This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision | ||
wiki:network_mana:backhaul [2020/06/18 15:50] mbi |
wiki:network_mana:backhaul [2024/03/07 13:49] (current) ehe |
||
---|---|---|---|
Line 122: | Line 122: | ||
</note> | </note> | ||
+ | === Fallback DNS servers === | ||
+ | |||
+ | Fallback DNS server are used if no DNS server is given by DHCP server of a particular service. They can be configure using following parameter: | ||
+ | |||
+ | <code bash> | ||
+ | FallbackNameservers = 9.9.9.9,8.8.8.8,1.1.1.1 | ||
+ | </code> | ||
==== Ethernet configuration ==== | ==== Ethernet configuration ==== | ||
Line 127: | Line 134: | ||
ConnMan’s LAN Ethernet configuration is done via an editable configuration file ''/etc/network/connman/lan.config''. This file is not created by default on the gateway. A configuration file ''/etc/network/connman/lan.config.example'' is provided. \\ | ConnMan’s LAN Ethernet configuration is done via an editable configuration file ''/etc/network/connman/lan.config''. This file is not created by default on the gateway. A configuration file ''/etc/network/connman/lan.config.example'' is provided. \\ | ||
- | Once file ''/etc/network/connman/lan.config'' is created, relaunch ConnMan to apply the configuration ''/etc/init.d/connman restart''. | + | Once file /etc/network/connman/lan.config is created, ConnMan applies automatically the configuration. Executing /etc/init.d/connman restart is not mandatory |
By default DHCP is used, there is no default IP address. To use static IP addressing, the field ''IPv4'' can be changed, for example, from | By default DHCP is used, there is no default IP address. To use static IP addressing, the field ''IPv4'' can be changed, for example, from | ||
Line 135: | Line 142: | ||
to | to | ||
- | <code ini>IPv4 = 192.168.1.0/24/192.168.1.1</code> | + | <code ini>IPv4 = 192.168.1.5/24/192.168.1.1</code> |
- | Where ''192.168.1.0'' will be the new IP address of the Wirnet gateway, ''24'' will be the subnet length (in bits), and ''192.168.1.1'' will be the default gateway. | + | Where ''192.168.1.5'' will be the new IP address of the Wirnet gateway, ''24'' will be the subnet length (in bits), and ''192.168.1.1'' will be the default gateway. |
If DNS resolution is needed, the ''Nameservers'' field can be added. Multiple addresses can be used. For example: | If DNS resolution is needed, the ''Nameservers'' field can be added. Multiple addresses can be used. For example: | ||
Line 191: | Line 198: | ||
==== Cellular configuration ==== | ==== Cellular configuration ==== | ||
+ | |||
The Wirnet iFemtoCell cellular modem is an external USB cellular dongle, here a list of several dongles tested in the [[wiki:ifemtocell:cellular_backhaul_ifemto|Cellular backhaul]] page.\\ | The Wirnet iFemtoCell cellular modem is an external USB cellular dongle, here a list of several dongles tested in the [[wiki:ifemtocell:cellular_backhaul_ifemto|Cellular backhaul]] page.\\ | ||
Line 209: | Line 217: | ||
It is used to define APN, PIN code and cellular context: | It is used to define APN, PIN code and cellular context: | ||
- | * Multiple PIN code for multiple SIM card can be stored in this file (using SIM card ICCID). | + | * A default APN for all SIM cards can be stored in this file. In this case, the MCC/MNC are not needed. |
+ | * Multiple APN for multiple SIM card can be stored (using MCC/MNC of the SIM). | ||
* A default PIN code for all SIM cards can be stored. | * A default PIN code for all SIM cards can be stored. | ||
+ | * Multiple PIN code for multiple SIM card can be stored (using SIM card ICCID). | ||
* Usually SIM cards only need ''SIM PIN'' code to be unlocked but sometimes other types of PIN code can be used, as described in the example below. | * Usually SIM cards only need ''SIM PIN'' code to be unlocked but sometimes other types of PIN code can be used, as described in the example below. | ||
+ | |||
+ | A file named ''/etc/network/ofono/default_provisioning'' contains several operators configuration (MCC, MNC, APN) for several countries. \\ | ||
+ | |||
+ | If the SIM used is already configured in this file, there is no need of configuring the APN the ''/etc/network/ofono/provisioning''. | ||
+ | |||
+ | <note important>The PIN code, if set, still needs to be configured in ''/etc/network/ofono/provisioning''.</note> | ||
+ | |||
+ | <note warning> On Wirnet iZeptoCell-Cellular, the APN that must be used is ''bicsapn''. It is pre-configured on this gateway and this configuration should not be changed | ||
+ | </note> | ||
+ | |||
<file ini provisioning> | <file ini provisioning> | ||
# Syntax: | # Syntax: | ||
- | #[operator:MCC,MNC] | ||
- | #internet.AccessPointName=APN => only mandatory field | ||
- | #internet.Username=myUsername | ||
- | #internet.Password=myPassword | ||
- | #internet.AuthenticationMethod=[chap, pap] => default is chap | ||
- | #internet.Protocol=[ip, ipv6, dual] => default is ip | ||
# | # | ||
- | #[sim:ICCID] | + | ## Default "operator" configuration: |
- | #pin=XXXX => SIM PIN of SIM identified by ICCID | + | #[operator] |
- | #phone=XXXX => PH-SIM PIN of SIM identified by ICCID | + | #internet.AccessPointName=<APN> # Mandatory |
- | #firstphone=XXXX => PH-FSIM PIN of SIM identified by ICCID | + | #internet.Username=<username> |
- | #network=XXXX => PH-NET PIN of SIM identified by ICCID | + | #internet.Password=<password> |
- | #netsub=XXXX => PH-NETSUB PIN of SIM identified by ICCID | + | #internet.AuthenticationMethod=<method> # chap (default), pap, none |
- | #service=XXX => PH-SP PIN of SIM identified by ICCID | + | #internet.Protocol=<protocol> # ip (default), ipv6, dual |
- | #corp=XXXX => PH-CORP PIN of SIM identified by ICCID | + | |
# | # | ||
+ | ## Specific "operator" configuration: | ||
+ | #[operator:<MCC>,<MNC>] | ||
+ | #internet.AccessPointName=<APN> # Mandatory | ||
+ | #internet.Username=<username> | ||
+ | #internet.Password=<password> | ||
+ | #internet.AuthenticationMethod=<method> # chap (default), pap, none | ||
+ | #internet.Protocol=<protocol> # ip (default), ipv6, dual | ||
+ | # | ||
+ | ## Default "sim" configuration: | ||
#[sim] | #[sim] | ||
- | #pin=XXXX => default SIM PIN | + | #pin=<pin> # SIM pin |
- | #phone=XXXX => default PH-SIM PIN | + | #phone=<pin> # PH-SIM pin |
- | #firstphone=XXXX => default PH-FSIM PIN | + | #firstphone=<pin> # PH-FSIM pin |
- | #network=XXXX => default PH-NET PIN | + | #network=<pin> # PH-NET pin |
- | #netsub=XXXX => default PH-NETSUB PIN | + | #netsub=<pin> # PH-NETSUB pin |
- | #service=XXX => default PH-SP PIN | + | #service=<pin> # PH-SP pin |
- | #corp=XXXX => default PH-CORP PIN | + | #corp=<pin> # PH-CORP pin |
- | + | # | |
- | # Orange | + | ## Specific "sim" configuration: |
- | [operator:208,01] | + | #[sim:<ICCID>] |
- | internet.AccessPointName=orange.m2m.spec | + | #pin=<pin> # SIM pin |
- | + | #phone=<pin> # PH-SIM pin | |
- | # SFR | + | #firstphone=<pin> # PH-FSIM pin |
- | [operator:208,10] | + | #network=<pin> # PH-NET pin |
- | internet.AccessPointName=websfr | + | #netsub=<pin> # PH-NETSUB pin |
+ | #service=<pin> # PH-SP pin | ||
+ | #corp=<pin> # PH-CORP pin | ||
</file> | </file> | ||
Line 252: | Line 276: | ||
<note important> | <note important> | ||
- | * If a Roaming SIM card is inserted in the gateway, the **MCC/MNC** codes to configure should be those ones of the SIM and not those of the local operator. | + | * If a Roaming SIM card is inserted in the gateway, the **APN** codes to configure should be those ones of the SIM and not those of the local operator. |
- | * The **APN** to configure is the one of the SIM provider also, not the one of the local operator. | + | * If needed, please see **SubscriberIdentity** line in gsmdiag.py result to know the **MCC/MNC** of the SIM card (5 first digits). |
+ | * The **MCC/MNC** to configure is the one of the SIM provider also, not the one of the local operator. | ||
</note> | </note> | ||
oFono stores information about SIM cards into the ''/etc/network/ofono/YOUR_IMSI*'' folder. The provisioning file is only used if this folder does not exist. | oFono stores information about SIM cards into the ''/etc/network/ofono/YOUR_IMSI*'' folder. The provisioning file is only used if this folder does not exist. | ||
- | To update oFono with the last configuration, each time the provisioning file, or the SIM card is changed, a service ''reset'' has to be performed. | + | |
+ | To update oFono with the last configuration, each time the file is changed, a service ''reset'' has to be performed. | ||
<code bash> | <code bash> | ||
/etc/init.d/ofono reset | /etc/init.d/ofono reset | ||
</code> | </code> | ||
+ | |||
+ | <note important> | ||
+ | **Each time the SIM card is changed, a service ''reset'' has to be performed.** | ||
+ | </note> | ||
=== Modem tools === | === Modem tools === | ||
Line 268: | Line 298: | ||
== GSM diagnosis tool == | == GSM diagnosis tool == | ||
- | <note important> | ||
- | The //GSM diagnosis// tool is delivered //as-is// (not fully validated). | ||
- | </note> | ||
GSM diagnosis tool is a script using oFono interfaces to detect most common problems on cellular modems. It can also be used to have a quick view of cellular modems status on board. | GSM diagnosis tool is a script using oFono interfaces to detect most common problems on cellular modems. It can also be used to have a quick view of cellular modems status on board. | ||
- | It produces a text file ''/tmp/gsmdiag.txt'' with information on modem status inside. | + | It produces information on modem status directly on the console and also a text file ''/tmp/gsmdiag.txt''. |
- | Call of script: | + | Call of script: ''# gsmdiag.py'' |
+ | Diagnosis output examples: | ||
+ | ++++ Modem ready to connect| | ||
<code bash> | <code bash> | ||
# gsmdiag.py | # gsmdiag.py | ||
- | Diagnostic written in /tmp/gsmdiag.txt | ||
- | </code> | ||
- | |||
- | Diagnosis file (wrong pin code case): | ||
- | |||
- | <file> | ||
- | Number of modems: 1 | ||
- | [Modem:/sierra_1] | ||
- | Powered:1 | ||
- | Online:0 | ||
- | Manufacturer:Sierra Wireless, Incorporated | ||
- | Model:MC7304 | ||
- | Revision:SWI9X15C_05.05.39.02 r22713 carmd-fwbuild1 2014/06/19 16:48:58 | ||
- | [SimProps] | ||
- | Present:1 | ||
- | CardIdentifier:89330120403002181830 | ||
- | SubscriberIdentity: property does not exist | ||
- | LockedPins:dbus.Array([dbus.String(u'pin')], signature=dbus.Signature('s'), variant_level=1) | ||
- | PinRequired:pin | ||
- | Error: SIM code required (PIN, PUK, ...) | ||
- | </file> | ||
- | |||
- | Diagnosis file (modem ready to connect): | ||
- | |||
- | <file> | ||
Number of modems: 1 | Number of modems: 1 | ||
[Modem:/sierra_0] | [Modem:/sierra_0] | ||
Line 334: | Line 338: | ||
Password: | Password: | ||
AuthenticationMethod:chap | AuthenticationMethod:chap | ||
- | </file> | + | Diagnostic written in /tmp/gsmdiag.txt |
+ | </code> | ||
+ | ++++ | ||
+ | |||
+ | ++++ SIM not detected| | ||
+ | <code bash> | ||
+ | # gsmdiag.py | ||
+ | Number of modems: 1 | ||
+ | [Modem:/quectelqmi_2] | ||
+ | Syspath:/sys/devices/soc0/soc/2100000.aips-bus/2184200.usb/ci_hdrc.1/usb2/2-1/2-1.1 | ||
+ | HardwarePosition:internal | ||
+ | Powered:1 | ||
+ | Online:1 | ||
+ | Manufacturer:QUALCOMM INCORPORATED | ||
+ | Model:QUECTEL Mobile Broadband Module | ||
+ | Revision:EG25GGBR07A08M2G | ||
+ | [SimProps] | ||
+ | Present:0 | ||
+ | Error: no SIM in modem (double checked with AT commands) | ||
+ | Diagnostic written in /tmp/gsmdiag.txt | ||
+ | </code> | ||
+ | ++++ | ||
+ | |||
+ | ++++ SIM detected but not operational| | ||
+ | <code bash> | ||
+ | # gsmdiag.py | ||
+ | Number of modems: 1 | ||
+ | [Modem:/quectelqmi_1] | ||
+ | Syspath:/sys/devices/soc0/soc/2100000.aips-bus/2184200.usb/ci_hdrc.1/usb1/1-1/1-1.1 | ||
+ | HardwarePosition:internal | ||
+ | Powered:1 | ||
+ | Online:1 | ||
+ | Manufacturer:QUALCOMM INCORPORATED | ||
+ | Model:QUECTEL Mobile Broadband Module | ||
+ | Revision:EG25GGBR07A07M2G | ||
+ | [SimProps] | ||
+ | Present:0 | ||
+ | Error: SIM detected (ICCID: 8959102062181454741F) but not usable by Ofono | ||
+ | Diagnostic written in /tmp/gsmdiag.txt | ||
+ | </code> | ||
+ | ++++ | ||
+ | |||
+ | ++++ Wrong pin code case| | ||
+ | |||
+ | <code bash> | ||
+ | # gsmdiag.py | ||
+ | Number of modems: 1 | ||
+ | [Modem:/sierra_1] | ||
+ | Powered:1 | ||
+ | Online:0 | ||
+ | Manufacturer:Sierra Wireless, Incorporated | ||
+ | Model:MC7304 | ||
+ | Revision:SWI9X15C_05.05.39.02 r22713 carmd-fwbuild1 2014/06/19 16:48:58 | ||
+ | [SimProps] | ||
+ | Present:1 | ||
+ | CardIdentifier:89330120403002181830 | ||
+ | SubscriberIdentity: property does not exist | ||
+ | LockedPins:dbus.Array([dbus.String(u'pin')], signature=dbus.Signature('s'), variant_level=1) | ||
+ | PinRequired:pin | ||
+ | Error: SIM code required (PIN, PUK, ...) | ||
+ | Diagnostic written in /tmp/gsmdiag.txt | ||
+ | </code> | ||
+ | ++++ | ||
+ | |||
== getmodeminfo.py tool == | == getmodeminfo.py tool == | ||
Line 387: | Line 455: | ||
It is not possible to send AT commands to external USB dongles used on Wirnet iFemtoCell. | It is not possible to send AT commands to external USB dongles used on Wirnet iFemtoCell. | ||
+ | |||
+ | * Get IMEI (iStation and iFemtoCell Evolution):<code bash>echo $'AT+CGSN\r' | microcom /dev/ttyAT | ||
+ | # result: | ||
+ | root@klk-wiis-xxxxxx:~ # echo $'AT+CGSN\r' | microcom /dev/ttyAT | ||
+ | AT+CGSN | ||
+ | 86769xxxxxxxxx8 | ||
+ | OK</code> | ||
== QMI (Wirnet iBTS only) == | == QMI (Wirnet iBTS only) == | ||
Line 428: | Line 503: | ||
</code> | </code> | ||
- | To trigger the update, first, check the module version of the gateway and make sure it is compatible with the firmware you want to install. Then follow the instruction of the [[wiki:sw_updates|software updates]] page. The update takes about 5 minutes. | + | To trigger the update, first, check the module version of the gateway and make sure it is compatible with the firmware you want to install. Then follow the instruction of the [[wiki:keros_custo:sw_updates|software updates]] page. The update takes about 5 minutes. |
A successful upgrade should display this kind of trace: | A successful upgrade should display this kind of trace: | ||
Line 503: | Line 578: | ||
ifup eth0 | ifup eth0 | ||
</code> | </code> | ||
+ | |||
+ | ===== Router Mode ===== | ||
+ | ==== Purpose ==== | ||
+ | The aim of the router mode is to bring data connection to a sub-network thanks to a connection from a single gateway. | ||
+ | |||
+ | Here is an example of how it could be used :\\ | ||
+ | {{:images:router_mode.jpg?850|}} | ||
+ | |||
+ | ==== Router configuring ==== | ||
+ | To activate the router mode on a gateway, some commands need to be made in the gateway console. | ||
+ | |||
+ | Here are the commands : | ||
+ | <code bash> | ||
+ | # Activate router mode | ||
+ | echo "ROUTER=yes" > /etc/default/localnet.conf | ||
+ | |||
+ | # Edition of /etc/network/connman/main.conf to disable handling of eth0: | ||
+ | NetworkInterfaceBlacklist = vmnet,vboxnet,virbr,ifb,eth1,wlan-adm,usb,eth0 | ||
+ | |||
+ | # Add eth0 to localnet handling by adding this line in /etc/udev/rules.d/localnet.rules | ||
+ | SUBSYSTEM=="net", KERNEL=="eth0", RUN+="/etc/udev/scripts/localnet.sh" | ||
+ | |||
+ | # Make sure this config is saved in case of firmware upgrade | ||
+ | echo "/etc/udev/rules.d/localnet.rules" > /etc/sysupgrade.d/localnet.conf | ||
+ | </code> | ||
+ | |||
+ | These commands need to be made on the gateway which will host the connection only. Nothing has to be done on other gateway(s).\\ | ||
+ | A reboot of the gateway is needed to apply this configuration. You can do so with the command ''reboot'' | ||
+ | |||
+ | The host gateway can now provide data connection locally to another gateway or to multiple gateways thanks to an ethernet switch. \\ | ||
+ | Local connections to the switch can be: | ||
+ | * Ethernet and/or | ||
+ | * WLAN |