
Dans de nombreux systèmes, la connexion Internet est essentielle, et même quelques minutes de temps d'arrêt peuvent être coûteux, par exemple dans les distributeurs automatiques de billets, les alarmes, les systèmes de surveillance et de contrôle d'accès.
Ces systèmes utilisent généralement plusieurs connexions Internet et basculent automatiquement entre différents canaux si le canal principal n'est pas disponible.
J'étais fatigué d'inventer le
basculement sur les modems USB moi-même, et je voulais déléguer cela à un matériel intelligent séparé. J'ai décidé de comparer plusieurs routeurs industriels pour savoir s'ils sont à la hauteur de leur nom et combien ils sont meilleurs que mes béquilles. L'article comparera les routeurs des fabricants iRZ, Termit, Robustel.
Exigences de base pour les routeurs:
- 2 cartes SIM et commutation automatique entre les opérateurs - le routeur doit détecter automatiquement la perte de communication sur un opérateur et passer à la sauvegarde. Ceci est particulièrement important pour les systèmes mobiles lorsque la couverture cellulaire n'est pas parfaite.
- Connexion Ethernet - le système principal ne doit voir que la passerelle par défaut, et ne doit pas connaître le sous-système modem côté routeur et la commutation de canaux, donc pas d'USB.
- Prise en charge des protocoles VPN modernes: IKEv2 et OpenVPN - pour faciliter l'administration, et afin de ne pas dépendre des adresses IP réelles, les routeurs doivent pouvoir VPN. Dans le même temps, supporte non seulement les protocoles PPTP et L2TP obsolètes, mais également les protocoles modernes.
- (Facultatif) Prise en charge GPS, disponibilité de GPIO, interfaces série RS-232/485 - ces fonctions ne sont pas requises pour nos tâches, mais nous les considérerons également comme un bonus, qui peut être utile à quelqu'un.
Le problème des béquilles maison
Routeur Wi-Fi avec deux modems USB (Photo: Dmitry Bevza dgl.ru)Basculement -
basculement d' urgence du canal Internet vers la sauvegarde, en cas d'inaccessibilité du canal principal.
Habituellement, pour réserver des canaux Internet, j'ai utilisé un routeur Wi-Fi domestique avec le firmware OpenWRT et le package
mwan3 . Il vous permet de configurer la sauvegarde et l'équilibrage automatiques entre plusieurs canaux Internet, y compris entre une connexion filaire et un modem USB.
Le principal inconvénient de cette approche est l'équipement hétérogène et la conception fragile des modems USB externes. J'ai aimé les modems Huawei E3372h avec le firmware HiLink (émulation Ethernet). Ces modems sont assez stables et bon marché, mais lorsque des antennes externes sont connectées, toute la structure devient très fragile. Les fils durs de l'antenne créent un levier, et les modems deviennent banals du port USB, et le connecteur d'antenne CRC9 lui-même n'est pas aussi fiable que le SMA, car il n'a pas de montage à vis.
Les assemblages sur les modems USB externes sont très fragiles: les connecteurs d'antenne ne sont pas fixes, les modems tombent des portsLa conception de deux modems USB avec des antennes externes devait être très difficile à réparer, mais les dommages physiques et les abandons de ports restaient le principal problème. Cette solution convient à une installation statique dans des endroits difficiles d'accès, mais elle ne convient absolument pas à une installation dans une voiture ou dans un panneau électrique sur un rail DIN.
Parfois, le sous-système USB se bloquait dans les routeurs et les modems devenaient indisponibles. J'ai dû écrire un
script de surveillance qui surveillerait séparément la disponibilité des modems, en plus de mwan3, qui surveille la disponibilité d'Internet. À un moment donné, j'en étais fatigué et j'ai commencé à chercher une solution dans une boîte, où tous les problèmes avaient déjà été résolus pour moi.
Tableau de comparaison des modèles
Les routeurs industriels sont plus chers que les routeurs domestiques, même avec l'achat séparé de modems. Par conséquent, le principal critère de choix des modèles pour l'examen était le coût. Des fonctionnalités supplémentaires comme le Wi-Fi, les broches GPIO et le GPS ne sont pas nécessaires dans notre cas, mais nous les comparerons toujours comme des options qui affectent le coût.
Méthodologie de test
La tâche principale des routeurs comparés est de fournir une connexion Internet ininterrompue dans toutes les conditions.Par conséquent, nous comparerons la façon dont le routeur bascule sur le canal de sauvegarde en cas de problèmes sur le principal. Pour ce faire, nous simulerons une perte de communication et mesurerons du côté serveur la rapidité avec laquelle le routeur a pu se reconnecter.
En tant qu'hôte cible, un petit routeur TP-Link MR3020 sera connecté à chaque routeur testé, qui agira comme un ordinateur avec une charge utile. Il exécutera OpenVPN connecté au serveur. La surveillance sera lancée sur le serveur, surveillant la disponibilité de l'adresse à l'intérieur du tunnel VPN.
Autrement dit, côté serveur, une adresse IP fixe sera surveillée et attribuée à mr3020 via un tunnel VPN. Quel que soit le canal par lequel passe le trafic sur le routeur, le serveur de surveillance interagira avec une seule adresse. Par conséquent, si l'adresse est disponible, cela signifie que le routeur a réussi à commuter le canal et qu'il y a Internet dans le réseau derrière NAT.
Afin de restaurer le tunnel OpenVPN le plus rapidement possible, côté serveur, définissez l'option keep-alive sur les valeurs minimales et désactivez le chiffrement:
cipher none ping 1 ping-restart 4
Gardez à l'esprit qu'il faut du temps pour reconnecter le VPN, et en réalité Internet se rétablit plus rapidement que ce qui est visible sur les graphiques. Cependant, un tel test permet une évaluation plus honnête du fait de la commutation des canaux, car il montre que les clients derrière le routeur ont pu restaurer les connexions TCP et revenir à un fonctionnement normal.
Un TP-Link MR3020 est connecté à chaque routeur, avec un tunnel VPN en cours d'exécution. Un Internet fonctionnel est considéré comme la disponibilité de l'adresse IP 10.0.0.1 côté serveurPingPlotter - programme de surveillance
Le programme de surveillance et le serveur OpenVPN sont situés sur le même ordinateur physique que le serveur VPN. Je
surveillerai l' utilitaire
MultiPing à l' aide de requêtes d'écho ICMP régulières. L'intervalle de demande est de 1 seconde - cela vous permet de voir sur le graphique même l'inaccessibilité à court terme de l'hôte.
PingPlotter dessine des graphiques ping pratiques montrant le retard et la perte de paquetsJ'avoue, j'ai longtemps essayé de choisir un système de monitoring. J'ai essayé les scripts zabbix, cacti, bash + rrdtool, mais tout cela semblait trop compliqué pour mes tâches. En conséquence, j'ai trouvé l'excellent programme
PingPlotter et sa version simplifiée sans traçage d'itinéraire -
MultiPing . Le programme permet de surveiller en temps réel un groupe d'hôtes avec une résolution allant jusqu'à 1 seconde et de dessiner des graphiques détaillés.
Aérien
Antenne large bande Triad MA-2697, adaptée aux gammes de base des communications cellulairesPour exclure une qualité de réception différente en raison d'antennes différentes, les mêmes antennes
Triad MA-2697 seront connectées à tous les routeurs. Selon le fabricant, l'antenne est à large bande et fonctionne dans les bandes GSM-900 \ 1800 MHz, 3G-2100 MHz, Wi-Fi-2400 MHz et 4G WiMAX-2600 MHz. Je ne vérifierai pas la qualité de l'antenne. Même s'il est mauvais, tous les routeurs fonctionneront dans les mêmes conditions de réception.
Opérateurs mobiles
Des cartes SIM MegaFon et MTS seront installées dans chaque routeur, avec le tarif habituel pour les particuliers. Le mégaphone sera sélectionné comme mode principal de veille MTS. Il n'y a pas de logique dans une telle priorité, le choix est aléatoire. Sur le site de test, les deux opérateurs ont également une bonne couverture LTE.
Inconvénients du banc d'essai
Banc d'essai déployé sur une tableLe banc d'essai étant fixe à l'intérieur, la qualité de la couverture du réseau cellulaire ne change pas. Dans de telles conditions, il est impossible de simuler artificiellement une faible couverture lorsqu'il y a un signal de réseau cellulaire, mais les pertes de paquets sont trop importantes. Dans le bon sens, il fallait placer un stand dans un train ou une voiture et le transporter dans des endroits éloignés de la ville. Il serait alors possible de comparer le fonctionnement des modems intégrés avec un mauvais signal.
Dans notre cas, nous ne pouvons recréer qu'une perte complète de communication sur le canal principal et surveiller la vitesse à laquelle le routeur bascule sur le canal de sauvegarde.
Termit CR41P
Le routeur est fourni par
Digital Angel (digitalangel.ru)
SoC : Atheros AR9344 rév. 3
RAM: 128 Mo
Mémoire flash: 16 Mo
Wi-Fi: 802.11n (2,4 GHz)
Modem :
Quectel EC25-E (LTE Cat 4)
Firmware : basé sur OpenWRT 15/05/1
Hôte USBMicroSDMontage sur rail DINGPS / GLONASS: Antenne active 3V
Interfaces série: RS-232/485
Conclusions d'E / S: 2 entrées numériques (0-3V / 0-30V, isolées galvaniquement), 1 entrée analogique (0-24V), 1 sortie numérique (30V, 250 mA collecteur ouvert), 1 sortie relais (40V, 4A SPST )

Pour installer la carte SIM, vous devez dévisser les quatre vis et retirer le couvercle arrière.
Eh bien, c'est une occasion d'examiner plus en détail l'intérieur.
cliquableLa partie modem est réalisée sous la forme d'un bouclier, qui est porté sur la carte principale.
Dans le coin, vous pouvez voir le relais pour une sortie de charge puissante vers les broches d'E / S.
Le routeur le plus riche en fonctionnalités de la revue. Il dispose d'un WAN filaire et vous permet également d'utiliser le Wi-Fi en mode station (client), en tant que WAN distinct. Autrement dit, il peut avoir quatre canaux Internet de sauvegarde.

L'interface Web délivre immédiatement LuCI d'OpenWRT. Cela peut être vu à la fois dans la conception, qu'ils n'ont pas essayé de déguiser, et dans les chemins d'accès dans l'URL. À mon avis, c'est plutôt un avantage, car cela permet de terminer facilement le système par vous-même. Fonctions industrielles ajoutées au firmware: Modbus,
VRRP , MQTT. Via Modbus et MQTT, vous pouvez contrôler les fonctions de base, obtenir l'état du réseau, les coordonnées GPS, la température, les profils de commutation, redémarrer le routeur, gérer les broches d'E / S.
La surveillance des canaux Internet se fait via le package
multiwan , qui est appelé obsolète dans le wiki OpenWRT. Au lieu de cela, mwan3 est recommandé.
Présentation de l'interface Web et des fonctionnalités supplémentairesConclusions d'E / S
Les broches d'E / S sont gérées via l'interface Web, vous pouvez immédiatement voir l'état et renommer chaque broche. Cela ne remplacera pas un microcontrôleur à part entière, mais peut convenir à une automatisation simple. Par exemple, ouvrez la porte ou soulevez la barrière par SMS, MQTT ou requête HTTP, effectuez une action lorsque le capteur est déclenché et envoyez une notification à ce sujet. Fonctionnalité assez intéressante qui vous permet de vous débrouiller avec un seul appareil.
Interface de configuration de déclenchement pour entrée analogique. Vous pouvez spécifier la plage de tension dans laquelle le déclencheur fonctionnera ou le configurer pour qu'il se déclenche lorsque vous quittez la plageInterfaces série RS-232/485
Physiquement, l'interface RS-232 se présente sous la forme d'un connecteur DB9 (port COM) et la RS-485 se présente sous la forme d'un bornier amovible. Dans l'interface Web, vous pouvez sélectionner quatre modes de fonctionnement de port:
- Console système - Accès SSH
- Série sur IP - transfert d'un port série sur Internet
- Passerelle Modbus - Convertisseur Modbus TCP <-> RTU
- Client NTRIP - transmission de données par GPS
Choix d'un mode de fonctionnement du port sérieGPS
Le module GPS est intégré à la puce du modem et est disponible en tant que périphérique USB. Il vous permet de suivre les coordonnées de l'appareil et de synchroniser l'horloge du système via GPS, tandis que le routeur peut être un serveur NTP et fournir une heure précise pour les appareils sur le réseau, même sans Internet. Il existe une fonction de
géolocalisation qui vous permet de définir une zone géographique comme déclencheur qui se déclenche lorsque vous visitez ou quittez une zone. Il peut être utile pour l'itinérance lorsque vous quittez votre région d'origine. Une seule zone peut être définie, et uniquement dans un rayon d'un point, c'est-à-dire que la zone est toujours un cercle.
Définition de la zone géographique de déclenchement de la gâchette Sortie Dmesg[0.000000] Linux version 3.18.44 (gediminas @ gediminas-H110M-S2H) (gcc version 4.8.3 (OpenWrt / Linaro GCC 4.8-2014.04 r40569)) # 14 ven 25 mai 15:09:41 EEST 2018
[0.000000] MyLoader: sysp = 30fe861a, boardp = 21046795, parts = 5c8953fe
[0.000000] bootconsole [early0] activé
[0.000000] La révision CPU0 est: 0001974c (MIPS 74Kc)
[0.000000] SoC: Atheros AR9344 rev 3
[0.000000] Carte RAM physique déterminée:
[0.000000] mémoire: 08000000 @ 00000000 (utilisable)
[0.000000] Initrd introuvable ou vide - désactivation de initrd
[0.000000] Plages de zones:
[0.000000] Normal [mem 0x00000000-0x07ffffff]
[0.000000] Début de la zone mobile pour chaque nœud
[0.000000] Premières plages de nœuds de mémoire
[0.000000] noeud 0: [mem 0x00000000-0x07ffffff]
[0.000000] Noeud de configuration Initmem 0 [mem 0x00000000-0x07ffffff]
[0.000000] Sur le nœud 0 totalpages: 32768
[0.000000] free_area_init_node: noeud 0, pgdat 803802b0, node_mem_map 81000000
[0.000000] Zone normale: 256 pages utilisées pour memmap
[0.000000] Zone normale: 0 pages réservées
[0.000000] Zone normale: 32 768 pages, lot LIFO: 7
[0.000000] Cache d'instruction primaire 64 Ko, VIPT, 4 voies, taille de ligne 32 octets.
[0.000000] Cache de données primaire 32 Ko, 4 voies, VIPT, alias de cache, taille de ligne 32 octets
[0.000000] pcpu-alloc: s0 r0 d32768 u32768 alloc = 1 * 32768
[0.000000] pcpu-alloc: [0] 0
[0.000000] Construction de 1 zones dans l'ordre des zones, regroupement de mobilité activé. Nombre total de pages: 32512
[0.000000] Ligne de commande du noyau: board = TLT-RUT900 console = ttyS0,115200 rootfstype = squashfs, jffs2 noinitrd lpj = 1370112 loglevel silencieux = 3
[0.000000] Entrées de table de hachage PID: 512 (ordre: -1, 2048 octets)
[0.000000] Entrées de la table de hachage du cache Dentry: 16384 (commande: 4, 65536 octets)
[0.000000] Entrées de table de hachage de cache d'inode: 8192 (commande: 3, 32768 octets)
[0.000000] Écriture du registre ErrCtl = 00000000
[0.000000] Registre ErrCtl de relecture = 00000000
[0.000000] Mémoire: 125728K / 131072K disponible (code de noyau 2611K, rwdata 155K, rodata 552K, init 256K, bss 189K, bss 189K, 5344K réservés)
[0.000000] SLUB: HWalign = 32, Order = 0-3, MinObjects = 0, CPU = 1, Nodes = 1
[0.000000] NR_IRQS: 83
[0.000000] Horloges: CPU: 550.000MHz, DDR: 400.000MHz, AHB: 200.000MHz, Ref: 40.000MHz
[0.000000] Calibration de la valeur de préréglage de la boucle de retard (sautée) ... 274.02 BogoMIPS (lpj = 1370112)
[0.000000] pid_max: par défaut: 32768 minimum: 301
[0.000000] Entrées de la table de hachage du cache de montage: 1024 (ordre: 0, 4096 octets)
[0.000000] Entrées de table de hachage de cache de point de montage: 1024 (ordre: 0, 4096 octets)
[0.000000] NET: famille de protocoles enregistrée 16
[0.000000] MIPS: la machine est TELTONIKA TLT-RUT900
[0.450000] pca953x 0-0074: le support d'interruption n'est pas compilé dans
[0.450000] i2c-gpio i2c-gpio.0: utilisation des broches 17 (SDA) et 16 (SCL)
[0.450000] Passé à la source d'horloge MIPS
[0.450000] NET: famille de protocoles enregistrée 2
[0.450000] TCP a établi des entrées de table de hachage: 1024 (ordre: 0, 4096 octets)
[0.450000] Entrées de table de hachage de liaison TCP: 1024 (ordre: 0, 4096 octets)
[0.450000] TCP: tables de hachage configurées (liaison 1024 établie 1024)
[0.450000] TCP: Reno enregistré
[0.450000] Entrées de table de hachage UDP: 256 (ordre: 0, 4096 octets)
[0.450000] Entrées de table de hachage UDP-Lite: 256 (ordre: 0, 4096 octets)
[0.450000] NET: famille de protocoles enregistrée 1
[0.450000] PCI: CLS 0 octet, par défaut 32
[0.460000] entrées de table de hachage futex: 256 (ordre: -1, 3072 octets)
[0.460000] squashfs: version 4.0 (31/01/2009) Phillip Lougher
[0.460000] jffs2: version 2.2 (NAND) (SOMMAIRE) (LZMA) (RTIME) (CMODE_PRIORITY) © 2001-2006 Red Hat, Inc.
[0.460000] msgmni a été défini sur 245
[0.460000] planificateur io noop enregistré
[0.460000] Date limite du programmateur io enregistrée (par défaut)
[0.460000] Série: pilote 8250/16550, 1 ports, partage IRQ désactivé
[0.460000] console [ttyS0] désactivée
[0.480000] serial8250.0: ttyS0 à MMIO 0x18020000 (irq = 11, base_baud = 2500000) est un 16550A
[0.480000] console [ttyS0] activée
[0.480000] bootconsole [early0] désactivée
[0.480000] ar934x-hs-uart.0: ttyATH0 à MMIO 0x18500000 (irq = 14, base_baud = 2500000) est un AR934X UART
[0.500000] m25p80 spi0.0: trouvé gd25q128, m25p80 attendu
[0.500000] m25p80 spi0.0: gd25q128 (16384 Ko)
[0.500000] 7 partitions teltonika trouvées sur le périphérique MTD spi0.0
[0.500000] Création de 7 partitions MTD sur "spi0.0":
[0.500000] 0x000000000000-0x000000020000: "u-boot"
[0.500000] 0x000000020000-0x000000030000: "config"
[0.500000] 0x000000030000-0x000000040000: "art"
[0.500000] 0x000000040000-0x0000001630ac: "noyau"
[0.500000] 0x0000001630ac-0x000000f70000: "rootfs"
[0.500000] mtd: périphérique 4 (rootfs) défini comme système de fichiers racine
[0.510000] 1 partitions squashfs-split trouvées sur les rootfs des périphériques MTD
[0.510000] 0x000000b30000-0x000000f70000: "rootfs_data"
[0.510000] 0x000000040000-0x000000f70000: "firmware"
[0.510000] 0x000000f70000-0x000001000000: "journal des événements"
[0.520000] libphy: ag71xx_mdio: sondé
[1.110000] ag71xx-mdio.1: a trouvé un commutateur intégré AR934X
[1.140000] eth0: Atheros AG71xx à 0xba000000, irq 5, mode: GMII
[1.730000] ag71xx ag71xx.0: connecté à PHY sur ag71xx-mdio.1: 04 [uid = 004dd042, driver = Generic PHY]
[1.730000] eth1: Atheros AG71xx à 0xb9000000, irq 4, mode: MII
[1.740000] TCP: cube enregistré
[1.740000] NET: famille de protocoles enregistrée 17
[1.740000] bridge: le filtrage automatique via arp / ip / ip6tables est obsolète. Mettez à jour vos scripts pour charger br_netfilter si vous en avez besoin.
[1.740000] Pare-feu de pont enregistré
[1.740000] 8021q: Prise en charge de VLAN 802.1Q v1.8
[1.750000] VFS: racine montée (système de fichiers squashfs) en lecture seule sur le périphérique 31: 4.
[1.750000] Libération de la mémoire du noyau inutilisée: 256 Ko (803a0000 - 803e0000)
[5.030000] usbcore: nouveau pilote d'interface enregistré usbfs
[5.030000] usbcore: nouveau concentrateur de pilotes d'interface enregistré
[5.030000] usbcore: nouveau pilote de périphérique enregistré usb
[5.050000] Sous-système SCSI initialisé
[5.050000] ehci_hcd: Pilote de contrôleur hôte «amélioré» (EHCI) USB 2.0
[5.050000] ehci-platform: pilote de plateforme générique EHCI
[5.050000] ehci-platform ehci-platform: contrôleur hôte EHCI
[5.050000] ehci-platform ehci-platform: nouveau bus USB enregistré, numéro de bus attribué 1
[5.060000] ehci-platform ehci-platform: correctif TX-TX IDP activé
[5.060000] ehci-platform ehci-platform: irq 3, io mem 0x1b000000
[5.080000] ehci-platform ehci-platform: USB 2.0 démarré, EHCI 1.00
[5.080000] hub 1-0: 1.0: hub USB trouvé
[5.080000] concentrateur 1-0: 1.0: 1 port détecté
[5.080000] uhci_hcd: pilote d'interface USB Universal Host Controller
[5.090000] usbcore: nouveau pilote d'interface enregistré usb-stockage
[5.400000] usb 1-1: nouveau périphérique USB haute vitesse numéro 2 utilisant la plate-forme ehci
[5.550000] hub 1-1: 1.0: hub USB trouvé
[5.550000] hub 1-1: 1.0: 3 ports détectés
[5.830000] usb 1-1.1: nouveau périphérique USB pleine vitesse numéro 3 utilisant la plate-forme ehci
[6.620000] mount_root: chargement de kmods à partir d'une superposition interne
[7.080000] jffs2: notice: (339) jffs2_build_xattr_subsystem: sous-système xattr de construction complet, 0 de xdatum (0 non contrôlé, 0 orphelin) et 0 de xref (0 mort, 0 orphelin) trouvé.
[7.080000] bloc: tentative de chargement de / tmp / jffs_cfg / upper / etc / config / fstab
[7.130000] bloc: extroot: non configuré
[7.240000] jffs2: notice: (336) jffs2_build_xattr_subsystem: sous-système xattr de construction complet, 0 de xdatum (0 non contrôlé, 0 orphelin) et 0 de xref (0 mort, 0 orphelin) trouvé.
[7.430000] bloc: tentative de chargement de / tmp / jffs_cfg / upper / etc / config / fstab
[7.480000] bloc: extroot: non configuré
[7.480000] mount_root: passage à la superposition jffs2
[9.980000] aléatoire: ubusd urandom lu avec 18 bits d'entropie disponibles
[11.260000] NET: famille de protocoles enregistrée 10
[11.410000] ntfs: driver 2.1.31 [Drapeaux: R / O MODULE].
[11.430000] Initialisation du socket netlink XFRM
[11.430000] NET: famille de protocoles enregistrés 15
[11.440000] tun: pilote de périphérique TUN / TAP universel, 1.6
[11.440000] tun: © 1999-2004 Max Krasnyansky <maxk@qualcomm.com>
[11.500000] l2tp_core: pilote principal L2TP, V2.0
[11.500000] l2tp_netlink: interface netlink L2TP
[11.510000] gre: pilote de démultiplexeur GRE sur IPv4
[11.510000] ip_gre: pilote de tunneling GRE sur IPv4
[11.540000] ip6_tables: © 2000-2006 Netfilter Core Team
[11.580000] nf_conntrack version 0.5.0 (buckets 1968, 7872 max)
[12.110000] lp: pilote chargé mais aucun périphérique trouvé
[12.130000] ppdev: pilote de port parallèle de l'espace utilisateur
[12.290000] Classificateur u32
[12.290000] vérification du périphérique d'entrée
[12.290000] Actions configurées
[12.330000] Action miroir / redirection sur
[12.460000] cdc_acm 1-1.1: 1.0: ce périphérique ne peut pas effectuer seul des appels. Ce n'est pas un modem.
[12.460000] cdc_acm 1-1.1: 1.0: ttyACM0: périphérique USB ACM
[12.460000] usbcore: nouveau pilote d'interface enregistré cdc_acm
[12.460000] cdc_acm: pilote de modèle de contrôle abstrait USB pour les modems USB et les adaptateurs RNIS
[12.470000] usbcore: nouveau pilote d'interface enregistré cdc_wdm
[12.500000] Chargement des modules rétroportés à partir de la version Linux v4.4-rc5-1913-gc8fdf68
[12.500000] Backport généré par backports.git backports-20151218-0-g2f58d9d
[12.690000] Ebtables v2.0 enregistré
[12.730000] ip_tables: © 2000-2006 Netfilter Core Team
[12.820000] Messages Netfilter via NETLINK v0.30.
[12.850000] usbcore: nouveau pilote d'interface enregistré usblp
[12.890000] usbcore: nouveau pilote d'interface enregistré usbserial
[12.890000] usbcore: nouveau pilote d'interface enregistré usbserial_generic
[12.890000] usbserial: prise en charge USB Serial enregistrée pour générique
[12.960000] xt_coova: prêt
[13.050000] xt_time: le fuseau horaire du noyau est -0000
[13.050000] usbcore: nouveau pilote d'interface enregistré ark3116
[13.050000] usbserial: prise en charge USB série enregistrée pour ark3116
[13.060000] usbcore: nouveau pilote d'interface enregistré belkin_sa
[13.060000] usbserial: prise en charge série USB enregistrée pour l'adaptateur série USB Belkin / Peracom / GoHubs
[13.090000] usbcore: nouveau pilote d'interface enregistré cdc_ether
[13.170000] usbcore: nouveau pilote d'interface enregistré cdc_ncm
[13.860000] usbcore: nouveau pilote d'interface enregistré ch341
[13.860000] usbserial: prise en charge USB série enregistrée pour ch341-uart
[13.860000] usbcore: nouveau pilote d'interface enregistré cp210x
[13.860000] usbserial: prise en charge USB série enregistrée pour cp210x
[13.860000] usbcore: nouveau pilote d'interface enregistré cypress_m8
[13.860000] usbserial: prise en charge USB série enregistrée pour DeLorme Earthmate USB
[13.860000] usbserial: prise en charge USB série enregistrée pour l'adaptateur HID-> COM RS232
[13.860000] usbserial: prise en charge USB série enregistrée pour l'adaptateur Nokia CA-42 V2
[13.880000] usbcore: nouveau pilote d'interface enregistré ftdi_sio
[13.880000] usbserial: prise en charge USB Serial enregistrée pour le périphérique série USB FTDI
[13.880000] usbcore: nouveau pilote d'interface enregistré huawei_cdc_ncm
[13.900000] usbcore: nouveau clavier enregistré du pilote d'interface
[13.900000] usbserial: prise en charge USB série enregistrée pour Keyspan - (sans micrologiciel)
[13.900000] usbserial: prise en charge USB série enregistrée pour l'adaptateur de port Keyspan 1
[13.900000] usbserial: prise en charge USB série enregistrée pour l'adaptateur de port Keyspan 2
[13.900000] usbserial: prise en charge USB série enregistrée pour l'adaptateur de port Keyspan 4
[13.990000] ctnetlink v0.93: enregistrement avec nfnetlink.
[14.020000] usbcore: nouveau pilote d'interface enregistré pl2303
[14.020000] usbserial: prise en charge USB série enregistrée pour pl2303
[14.030000] Pilote générique PPP version 2.4.2
[14.040000] Module de compression PPP MPPE enregistré
[14.040000] NET: Famille de protocoles enregistrée 24
[14.040000] Pilote PPTP version 0.8.5
[14.050000] usbcore: nouveau pilote d'interface enregistré qmi_wwan
[14.140000] l2tp_ppp: pilote de noyau PPPoL2TP, V2.0
[14.140000] usbcore: nouvelle option de pilote d'interface enregistrée
[14.140000] usbserial: prise en charge USB série enregistrée pour le modem GSM (1 port)
[14.160000] usbcore: nouveau pilote d'interface enregistré qcserial
[14.160000] usbserial: prise en charge USB Serial enregistrée pour le modem USB Qualcomm
[14.200000] ath: domaine EEPROM: 0x0
[14.200000] ath: l'EEPROM indique que le code de pays par défaut doit être utilisé
[14.200000] ath: faire EEPROM pays-> regdmn map search
[14.200000] ath: cartes des pays au code regdmn: 0x3a
[14.200000] ath: Pays alpha2 utilisé: États-Unis
[14.200000] ath: Regpair utilisé: 0x3a
[14.210000] ieee80211 phy0: Algorithme de contrôle de débit sélectionné 'minstrel_ht'
[14.210000] ieee80211 phy0: Atheros AR9340 Rev: 3 mem = 0xb8100000, irq = 47
[14.280000] mmc_spi spi0.1: ASSUMER la puissance de l'emplacement 3,2-3,4 V
[17.330000] mmc_spi spi0.1: hôte SD / MMC mmc0, pas de DMA, pas de WP, pas de mise hors tension
[17.330000] mmc_spi spi0.1: pas de prise en charge des volts de la carte
[17.330000] mmc0: erreur -22 lors de l'initialisation de la carte SDIO
[17.330000] mmc_spi spi0.1: pas de prise en charge des volts de la carte
[17.330000] mmc0: erreur -22 lors de l'initialisation de la carte SD
[17.340000] mmc_spi spi0.1: pas de prise en charge des volts de la carte
[17.340000] mmc0: erreur -22 lors de l'initialisation de la carte MMC
[20.700000] usb 1-1.3: nouveau périphérique USB haute vitesse numéro 4 utilisant la plate-forme ehci
[20.920000] option 1-1.3: 1.0: convertisseur de modem GSM (1 port) détecté
[20.920000] usb 1-1.3: convertisseur de modem GSM (1 port) désormais connecté à ttyUSB0
[20.930000] option 1-1.3: 1.1: convertisseur de modem GSM (1 port) détecté
[20.940000] usb 1-1.3: convertisseur de modem GSM (1 port) désormais connecté à ttyUSB1
[20.950000] option 1-1.3: 1.2: convertisseur de modem GSM (1 port) détecté
[20.950000] usb 1-1.3: convertisseur de modem GSM (1 port) désormais connecté à ttyUSB2
[20.960000] option 1-1.3: 1.3: convertisseur de modem GSM (1 port) détecté
[20.970000] usb 1-1.3: convertisseur de modem GSM (1 port) désormais connecté à ttyUSB3
[21.000000] qmi_wwan 1-1.3: 1.4: cdc-wdm0: périphérique USB WDM
[21.000000] qmi_wwan 1-1.3: 1.4: Quectel EC21 & EC25 & EC20 R2.0 fonctionne en mode RawIP
[21.010000] qmi_wwan 1-1.3: 1.4 wwan0: enregistrez 'qmi_wwan' sur usb-ehci-platform-1.3, périphérique WWAN / QMI, 3a: a9: 1d: 1a: 9e: d9
[25.600000] jffs2: notice: (1621) jffs2_build_xattr_subsystem: sous-système xattr de construction complet, 0 de xdatum (0 non contrôlé, 0 orphelin) et 0 de xref (0 mort, 0 orphelin) trouvé.
[28.880000] le périphérique eth0 est entré en mode promiscuité
[28.890000] br-lan: le port 1 (eth0) est entré dans l'état de transfert
[28.890000] br-lan: le port 1 (eth0) est entré dans l'état de transfert
[30.010000] br-lan: le port 1 (eth0) est entré dans l'état désactivé
[34.410000] le périphérique wlan0 est entré en mode promiscuité
[34.420000] br-lan: le port 2 (wlan0) est entré dans l'état de transfert
[34.420000] br-lan: le port 2 (wlan0) est entré dans l'état de transfert
[34.460000] br-lan: le port 2 (wlan0) est entré dans l'état désactivé
[41.530000] br-lan: le port 2 (wlan0) est entré dans l'état de transfert
[41.530000] br-lan: le port 2 (wlan0) est entré dans l'état de transfert
[43.530000] br-lan: le port 2 (wlan0) est entré dans l'état de transfert
[51.350000] LEDs de ports allumées
[54.390000] random: le pool non bloquant est initialisé
Configuration WAN
Interface de définition des priorités pour les canaux Internet. Vous pouvez sélectionner une sauvegarde principale et deux de sauvegarde. Dans notre cas, le modem est sélectionné comme principal et le WAN câblé comme sauvegarde.
Priorisation des canaux Internet. Vous pouvez sélectionner primaire et sauvegardeIl faut garder à l'esprit qu'il n'y a qu'un seul modem (module radio) dans le routeur, et qu'une seule carte SIM peut être simultanément dans le réseau. Le système de surveillance vérifie la disponibilité d'Internet dans chaque canal à l'aide de requêtes ping vers un hôte donné. Dans le même temps, vous ne pouvez pas vérifier laquelle des deux cartes SIM a accès à Internet, vous pouvez uniquement basculer vers un autre canal: filaire ou Wi-Fi. Les conditions de changement de carte SIM sont configurées séparément et ne dépendent pas d'une surveillance générale.
Mise en place d'un suivi de la disponibilité du canal Internet. Vous pouvez spécifier l'hôte à vérifier, vérifier les intervalles et le nombre de tentativesÉtant donné que la surveillance de l'accessibilité (package multiwan d'Openwrt) perçoit le modem comme une seule interface, il ne peut pas lancer la commutation SIM si Internet n'est pas disponible sur le modem. Le package multiwan ne peut que changer l'interface réseau principale. Les conditions de commutation de la carte SIM sont définies séparément et seules les conditions suivantes peuvent être sélectionnées parmi les conditions: signal faible, limite de trafic, itinérance, pas de réseau, pas de connexion PPP. Autrement dit, dans certains cas, le modem peut ne pas commuter la carte SIM, même s'il n'a pas Internet. Par exemple, si l'opérateur a une panne de réseau, alors que le modem a une adresse IP, ou si l'opérateur a bloqué l'accès au réseau pour non-paiement, et redirige la demande de talon avec une interface de paiement. Dans ce cas, aucune condition de changement de carte SIM ne sera remplie, car il existe une connexion formelle avec l'opérateur.
La définition des conditions de basculement entre les cartes SIM ne fonctionne pas conjointement avec la surveillance de la disponibilité d'InternetSimulation de crash
Nous n'avons pas été en mesure de trouver un moyen de simuler par programme les conditions de basculement de la carte SIM vers la carte de sauvegarde dans ce routeur, nous allons donc vérifier la commutation vers le canal filaire de sauvegarde. Pour ce faire, déconnectez les antennes du routeur et regardez le graphique. Le temps de commutation est en moyenne de 12 à 15 secondes, compte tenu de la restauration de la connexion VPN. Vous pouvez réduire ce temps en réduisant l'intervalle d'inspection et le nombre de paquets perdus pour les déclencheurs de commutation, mais des paramètres de surveillance trop agressifs provoquent souvent des faux positifs lorsque la connexion est interrompue pendant quelques secondes seulement.
Le temps de commutation sur le canal de sauvegarde est d'environ 15 secondesConclusion
Un routeur avec de nombreuses fonctionnalités supplémentaires. Un travail intéressant a été réalisé avec le module d'E / S: il y a des sorties analogiques et numériques, un relais de puissance. Vous pouvez contrôler les broches à distance et configurer les déclencheurs. Cela vous permet de construire une automatisation simple avec des périphériques externes sur un seul routeur. Par exemple, gérer une serre ou un chauffage d'espace.
Avantages
- De nombreuses fonctionnalités supplémentaires
- Plateforme OpenWRT
- Soutenir LTE Cat 4
- Trois types de WAN: modem, Ethernet, WiFi
Inconvénients
- Vous ne pouvez pas spécifier des adresses de surveillance différentes pour chaque carte SIM
- Les conditions pour passer à une carte SIM de sauvegarde sont distinctes de la surveillance de l'accessibilité à Internet
Robustel r2000
Le routeur est fourni par Euromobile (euromobile.ru)
SoC : Atheros 533 MHzRAM: 64 Mo demémoire Flash: 16 MoModem : Huawei ME909s-120 (LTE Cat 4)Firmware :routeur basé sur Linux fermé avec deux ports Ethernet et un minimum de fonctions. Un seul des ports LAN peut faire office de WAN. Le firmware est fermé, il n'y a pas d'accès root via SSH. La console se limite à son interpréteur avec plusieurs commandes (comme les appareils Ubiquiti).
Présentation de l'interface utilisateur WebVPN
OpenVPN IPsec IKEv2.
IPsec-
OpenVPN-syslog

email SMS

User LED
. , VPN .

Configuration WAN
Il existe plusieurs modes de sauvegarde et d'équilibrage. La deuxième option peut être utile pour basculer rapidement entre les canaux.- Cold backup: ,
- Warm backup: , ( SIM )
- Load balancing:
Dans les paramètres par défaut, pour une raison quelconque, le retour au canal principal après le passage au canal de sauvegarde est désactivé. Ceci est défini dans l'intervalle de retour, lorsqu'il est réglé sur zéro, le canal ne reviendra jamais après le passage à la sauvegarde.
Définition des priorités et des modes WANChaque carte SIM est configurée en tant qu'interface distincte: WWAN1 et WWAN2. Pour chaque interface, vous pouvez configurer séparément l'adresse pour vérifier la disponibilité d'Internet et vos propres intervalles. C'est le seul routeur de la revue où vous pouvez spécifier deux hôtes à la fois pour vérification. Ceci est utile pour se protéger contre les faux positifs lorsque l'hôte de test se bloque, mais il y a un accès Internet.
Chaque carte SIM peut être configurée pour vérifier la disponibilité Internet.root- , , . , .
robustel.com/products/app-center/ , OpenWRT.
, , -.
Comme nous pouvons spécifier différents hôtes pour vérifier la disponibilité de chaque carte SIM, pour simuler un accident, nous indiquerons notre serveur contrôlé comme première carte SIM et l'éteindrons à un moment donné. Pour la pureté de l'expérience, nous allons régler les intervalles de test sur les mêmes que pour le premier routeur de la revue.
Le passage à la deuxième carte SIM prend entre 15 et 30 secondes.Enmoyenne, le routeur passe à la deuxième carte SIM en 15 à 30 secondes. Je pense que l’enregistrement du réseau du deuxième opérateur prend le plus de temps. Étant donné que tous nos routeurs utilisent un seul modem, une seule carte SIM peut être dans le réseau à la fois. Il existe des routeurs industriels avec deux modems indépendants qui sont connectés simultanément à deux opérateurs mobiles. Dans ce cas, la commutation des canaux est plus rapide.Conclusion
Routeur compact et simple avec un minimum de fonctions, facile à configurer. Une plateforme fermée et le manque d'accès root peuvent interférer avec quelqu'un. Il peut être recommandé dans les cas où la facilité de configuration est plus importante.Avantages
- Paramètres de basculement séparés pour chaque carte SIM
- Soutenir LTE Cat 4
- Mode de sauvegarde à chaud, dans lequel le canal de sauvegarde ne s'éteint pas
- Configuration facile
Inconvénients
- Plateforme fermée, pas d'accès root
- Console SSH tronquée
- Un seul port Ethernet peut fonctionner en tant que WAN
iRZ RU22W
Le routeur est fourni par Digital Angel (digitalangel.ru)
SoC : MediaTek MT7620A ver: 2 eco: 6RAM: 64Mémoire flash: 16Wi-Fi: 802.11n (2.4GHz)Modem : Huawei MU709s-2MicroSDGPS support cardFirmware : on base OpenWRT 15.05LTE, 3G- HSPA+/UMTS (900/2100 MHz) 2G GSM/GPRS (850/900/1800/1900 MHz), . GPS, Wi-Fi . - Ethernet- , VLAN WAN. Wi-Fi (), WAN. , SIM- 7 WAN-. Pas mal.

--
, , , , IMEI, .
Wi-Fi- (AP) (Station). , SSID .VPN
OpenVPN , IPSec — . Cisco IPSec, IKEv2.
Cisco IPSec IKEv2Ethernet over IP

RS-232/485
serial over ip modbus TCP<->RTU. AT- .

GPIO
c GPIO . -, , . , - API, , . . .

WAN
Les priorités d'interface sont sélectionnées dans le menu Routes. Vous pouvez choisir l'un des deux modes: basculement et équilibrage. Le premier basculera le canal vers l'interface de sauvegarde au cas où le primaire ne serait pas disponible, et le second répartira le trafic également entre les interfaces, au niveau NAT.La surveillance de la disponibilité et le basculement de l'interface se font à l'aide des scripts bash faits maison d'iRZ. Par exemple, le service / usr / bin / pinger envoie des pings, bascule les interfaces et contrôle les voyants. Bashism assez dur :)Configuration de la carte SIM
Pour chaque carte SIM, vous pouvez définir votre propre hôte de contrôle de connexion. Cela est pratique dans les cas où nous voulons choisir différents serveurs, selon le fournisseur de services. Par exemple, en itinérance, nous utilisons un serveur et dans la région d'origine un autre.
Vous pouvez définir différents hôtes auxquels la communication sera vérifiée pour chaque carte SIMGPS
Je n'ai pas trouvé la possibilité d'utiliser le module GPS d'une manière ou d'une autre, sauf via gpsctl depuis la console. L'interface Web ne le mentionne pas du tout. Je pense qu'il est activé via des services cloud natifs pour une gestion centralisée des routeurs. L'incapacité à utiliser l'API GPS par moi-même est considérée comme un inconvénient.Simulation de crash
Pour chaque carte SIM, nous avons indiqué différents hôtes pour vérifier l'accessibilité à Internet, afin que nous puissions facilement simuler un accident. Pour ce faire, nous bloquerons l'hôte de la première carte SIM sur le pare-feu et verrons comment le routeur répondra à cela. Pour la pureté de l'expérience, nous allons définir les mêmes intervalles de test et le nombre de tentatives que le premier routeur.
Sur plusieurs tentatives, le temps de commutation moyen est de 30 secondes, parfois la deuxième carte SIM est enregistrée pendant une longue période et la commutation est retardée d'une minute. Je ne sais pas si cela est dû au modem ou aux fonctionnalités de l'opérateur mobile.Conclusion
J'ai aimé avoir la possibilité d'obtenir jusqu'à 4 WAN câblés et des paramètres de basculement séparés pour chaque carte SIM. Le but du module GPS est resté incompréhensible; son utilisation sans logiciel tiers n'a pas fonctionné.Avantages
- Plateforme ouverte basée sur OpenWRT
- failover SIM-
- LAN- WAN
Conclusion
À mon avis, les solutions industrielles spécialisées sont beaucoup plus pratiques que les structures artisanales basées sur un routeur SOHO. Bien que dans la plupart des cas, le même micrologiciel OpenWRT soit utilisé, toutes les nuances sont déjà prises en compte, l'ajustement se résume à définir plusieurs paramètres dans l'interface Web, et vous n'avez pas besoin d'écrire vous-même des béquilles comme des scripts de surveillance, tout est déjà prêt à l'emploi.Des fonctions supplémentaires comme GPIO et le module GPS permettent, dans de nombreux cas, de gérer un appareil au lieu de deux, pour de simples tâches d'automatisation et de collecte de données.Les trois fabricants disposent de leur propre logiciel de gestion centralisée des routeurs. Dans le cadre de cet article, nous ne l'avons pas considéré. Il est utile pour un grand nombre d'installations et vous permet de gérer tous les routeurs à partir d'un panneau de contrôle. Il vaut peut-être aussi la peine d'explorer ce logiciel.