A lightweight python script that can monitor the T-Mobile Home Internet Nokia 5G Gateway for band and connectivity and reboot as needed.

Overview

tmo-monitor

A lightweight Python 3 script that can monitor the T-Mobile Home Internet Nokia 5G Gateway for band and connectivity and reboot as needed.

Currently checks for n41 5G signal and connectivity to either google.com or a configurable host via ping.

Windows is not currently supported, but should work well with *nix OSes.

Getting Started

Install dependencies

pip install -r requirements.txt

Mark as executable

chmod +x ./tmo-monitor.py

Usage

usage: tmo-monitor.py [-h] [-I INTERFACE] [-H PING_HOST] username password

Check T-Mobile Home Internet 5g band and connectivity and reboot if necessary

positional arguments:
  username              the username. should be admin
  password              the administrative password

optional arguments:
  -h, --help            show this help message and exit
  -I INTERFACE, --interface INTERFACE
                        the network interface to use for ping
  -H PING_HOST, --ping-host PING_HOST
  -R, --reboot          skip health checks and immediately reboot gateway

Options

Interface: --interface Can be used to specify the network interface used by the ping command. Useful if T-Mobile Home Internet is not your default network interface: e.g., this is running on a dual WAN router.

Ping Host --ping-host Defaults to google.com - override if you'd like to ping an alternate host to determine internet connectivity.

Reboot --reboot Skip health checks and immediately reboot gateway.

Known Issues

Windows OS ping implementation is not supported.

Roadmap

(Not yet implemented):

  • Specify desired band locking
    • 4g
    • 5g
  • Disable band locking check
  • Disable ping/connectivity check
  • Alternate connectivity checks
  • Disable reboot behavior
  • systemd service configuration

Tip

Run this script with either a cronjob or as a systemd service to implement periodic recurring T-Mobile Home Internet health checks with automatic rebooting.

Comments
  • overhaul the way credentials are managed

    overhaul the way credentials are managed

    An obnoxious number of changes, any of which you're free to veto or tell me to modify. The basic idea behind all of this was to make it possible to save the encrypted credentials to a file for later use so a user wouldn't need to either (a) store their router password as plaintext in a cronjob or, at the every least, their bash history or (b) always be prompted for a password. Note that I still need to test the longevity of the credentials, because if they expire after a few hours (or even a few days), then they're not nearly as useful for this idea, and I'll need to figure something else out (or settle for my unencrypted router password stored in crontab, sigh).

    Anyways, the major changes are:

    • Allow for credentials to be saved to and loaded from a JSON file
    • Set a default for the admin username (to uh... admin)
    • Allow the user to either pass the password in as an argument or input it at a password prompt
    • Move everything into a class and instantiate that class (this really wasn't entirely necessary, I'm just a nerd)

    If you want some of these changes but not all, feel free to copy+paste, or even ask me to go make a less-drastically-changed branch.

    opened by BenKesselring 11
  • Feature request: support for IPv6

    Feature request: support for IPv6

    IPv4 addresses are supported at ping hosts (e.g., 8.8.8.8), but IPv6 (e.g., 2001:4860:4860::8888) isn't on Linux as it requires the use of ping6 instead of ping.

    It would be nice to support both.

    enhancement good first issue 
    opened by hugoh 8
  • Add basic logging functionality & log all connection metrics

    Add basic logging functionality & log all connection metrics

    commit 3c1b750c4ec3276ad228108dabe2f82a08fc6210 Author: Andrew Pardoe [email protected] Date: Fri Dec 24 09:13:15 2021 -0800

    Add basic logging and connection logging
    
    Add new logging options:
      - tmo_logfile: specify logfile
      - tmo_log_all: log all connection statistics
    
    Also move some error output to logfile
    

    commit fd85144231eaf7b93a4bec50ee423d401d68ef1b Author: Andrew Pardoe [email protected] Date: Tue Dec 21 16:23:51 2021 -0500

    Add default operational logging
    
    1. Move error messages from print to logging.error
    2. Add operational logging
    3. Add log_all option to log all connection characteristics
    

    commit cb5eefdbaecaec8391d9c8376eeb4ddf8d2d49b4 Author: Andrew Pardoe [email protected] Date: Mon Dec 20 22:25:43 2021 -0500

    Added logging for basic cases
    
    opened by AndrewPardoe 8
  • v2: Add .env file for configuration & rework args

    v2: Add .env file for configuration & rework args

    Add .env file for configuration settings Rework arguments & argument parsing Add try/catch around request.get that require connection

    Squashed commit of the following:

    commit 1ad90f8da3a3908ffd5737ccd07318a40164e97b Author: Andrew Pardoe [email protected] Date: Thu Dec 16 17:33:35 2021 -0800

    tolower the True comparisons
    

    commit b4d0df17f99f1bf819c1002f7832f18d2cd0c212 Author: Andrew Pardoe [email protected] Date: Thu Dec 16 17:28:04 2021 -0800

    Try/catch around get requests
    

    commit e9dd8e7de49b73cb7c4449ecc80b072a655f0b75 Author: Andrew Pardoe [email protected] Date: Thu Dec 16 16:13:44 2021 -0800

    Re-enabled reboot function
    

    commit ec1347f7bc346e60f188fd2e319bbcee3de2484d Author: Andrew Pardoe [email protected] Date: Thu Dec 16 16:12:35 2021 -0800

    Finished testing of configuration
    

    commit 5f7251a46e344f291f217191bb7e1e7887358854 Author: Andrew Pardoe [email protected] Date: Wed Dec 15 08:19:40 2021 -0800

    Add small design spec for v2
    

    commit 14c1badc2a9b805d561fbc65f023aaaa35f34c86 Author: Andrew Pardoe [email protected] Date: Sun Dec 12 19:12:53 2021 -0800

    Add eND ID info to output
    

    commit 368ca2c1d295b9107014b11a00d36a351d39699a Author: Andrew Pardoe [email protected] Date: Sun Dec 12 16:46:55 2021 -0800

    Support new ping parameters & update requirements
    

    commit 686ba2e04f8420edf8d5f362184aec0500719f68 Author: Andrew Pardoe [email protected] Date: Sun Dec 12 16:04:18 2021 -0800

    Add .env support for config & refactor arg parsing
    
    opened by AndrewPardoe 8
  • How is the ping count supposed to be formatted?

    How is the ping count supposed to be formatted?

    I tried various choices and it looks to me like every time it's still only doing 1 ping.

    [email protected]:~ $ /home/pi/tmo-monitor-main/tmo-monitor.py --ping-count 3 --skip-bands admin password PING google.com (142.250.64.238) 56(84) bytes of data. 64 bytes from mia07s57-in-f14.1e100.net (142.250.64.238): icmp_seq=1 ttl=109 time=47.3 ms

    --- google.com ping statistics --- 1 packets transmitted, 1 received, 0% packet loss, time 0ms rtt min/avg/max/mdev = 47.275/47.275/47.275/0.000 ms

    No reboot necessary. [email protected]:~ $ /home/pi/tmo-monitor-main/tmo-monitor.py --skip-bands --ping-count=1 admin password PING google.com (142.250.64.238) 56(84) bytes of data. 64 bytes from mia07s57-in-f14.1e100.net (142.250.64.238): icmp_seq=1 ttl=109 time=54.8 ms

    --- google.com ping statistics --- 1 packets transmitted, 1 received, 0% packet loss, time 0ms rtt min/avg/max/mdev = 54.781/54.781/54.781/0.000 ms

    No reboot necessary. [email protected]:~ $ /home/pi/tmo-monitor-main/tmo-monitor.py --skip-bands --ping-count=3 admin password PING google.com (142.250.64.238) 56(84) bytes of data. 64 bytes from mia07s57-in-f14.1e100.net (142.250.64.238): icmp_seq=1 ttl=109 time=39.6 ms

    --- google.com ping statistics --- 1 packets transmitted, 1 received, 0% packet loss, time 0ms rtt min/avg/max/mdev = 39.575/39.575/39.575/0.000 ms

    question 
    opened by famewolf 8
  • Log to syslog

    Log to syslog

    Unifies logging to use logging and adds option to log to syslog.

    Note that it works on Linux, and I cannot figure out why it doesn't on macOS (/var/run/syslog should be the socket to write to…).

    Implements #54 on Linux, maybe on macOS too.

    opened by hugoh 7
  • Included Docker image generation

    Included Docker image generation

    Here's a proposed patch to solve #42.

    To make it work: do a search and replace of hugohh/tmo-monitor into your know Docker Hub username/repo, and add the corresponding DOCKERHUB_USERNAME and DOCKERHUB_TOKEN as repository secrets.

    opened by hugoh 7
  • Bug merging configuration across .env, command line, and defaults

    Bug merging configuration across .env, command line, and defaults

    I grabbed the latest version and the logging is not working. Where it was on 12/30. Also the print configuration on the latest version is not working.

    bug 
    opened by danhausman 7
  • Arcaydyan enBID coming up wrong

    Arcaydyan enBID coming up wrong

    When I remove the first six characters (T-Mobile ID), then divide the remaining 8 digit number by 256, the tower ID matched what cellmapper.net showed for my connected tower. Discard the numbers after the decimal point, to get the correct enBID. I would be amenable to letting you ssh into my Linux Box, running Fedora 35, if you care to test it with a live unit. I do appreciate this effort you are putting out, for all of us who are using the Arc box. Using CGI on LTE tab, as the source, peel off the first 6 characters, then divide the remaining 8 digit number by 256, drop the characters after the decimal point, should give cell tower enBID that match the stuff reported to cellmapper.net. Hope this helps. Great work on this tool.

    opened by SteveEbey73742 6
  • Multiple consecutive pings in x time before you reboot due to drop outs or latency (due to bad weather etc)

    Multiple consecutive pings in x time before you reboot due to drop outs or latency (due to bad weather etc)

    At given times of the day and especially in bad weather you can experience "drop outs" that can last for 20-30 seconds. Right now this will trigger a reboot that adds another 2 minutes into the process. If the monitor was to do 4 pings 10 seconds apart before triggering a reboot this would allow for those moments of drop out or latency.

    This seemed to be different enough from the "enhance ping" issue where it talks about multiple hosts vs multiple pings across a timeframe interval.

    enhancement 
    opened by famewolf 6
  • Support .env files & major refactoring of argument parsing

    Support .env files & major refactoring of argument parsing

    Hey there! First, thanks for the script!

    I wanted to add (local) logging, but before I hacked on it I figured I'd add support for .env files and clean up the argument parsing a bit. I tried not to change the semantics but I haven't thoroughly tested yet.

    What I've got is a pretty major refactor that's just one commit behind your repo's status.

    https://github.com/AndrewPardoe/tmo-monitor/blob/config/tmo-monitor.py

    If you like the refactor, I'm happy to integrate your multiple ping logic & submit a PR to merge everything back. If you don't like the refactor, I'll probably maintain a fork. I'm still testing so I haven't created a PR yet.

    Please LMK.

    enhancement 
    opened by AndrewPardoe 5
  • Use technique other than ping to assess connection status

    Use technique other than ping to assess connection status

    It looks like T-Mobile started blocking pings, and so the connection looks down even when it's not. This broke this tool for me – I'm assuming for others too.

    We should add a different mechanism, such as DNS lookup or HTTP request.

    opened by hugoh 3
  • Provide an option to explicitly force IPv4 ping

    Provide an option to explicitly force IPv4 ping

    I had issues when my Linux system didn't apparently handle IPv6 pings to Google very well, and for some reason tmo_monitor/gateway/base.py wanted to use IPv6 ping. It would be really nice to either explicitly force ping -4 by default, or allow the user to specify ping -4 as a command line option.

    In my configuration I wanted to make double sure it didn't use IPv6 ping, so I just hardcoded base.py to add the -4 flag...

    opened by therealbobrice 0
  • Crashes Immediately on macOS

    Crashes Immediately on macOS

    macOS 12.4 Python 3.9.13 tmo-monitor 2.0.0 beta6

    All dependencies installed, as far as I know. The main script crashes with:

    $ ./bin/tmo-monitor.py Password: 2022/06/20 18:42:29 [DEBUG] Starting new HTTP connection (1): 192.168.12.1:80 2022/06/20 18:42:29 [DEBUG] http://192.168.12.1:80 "GET /fastmile_radio_status_web_app.cgi HTTP/1.1" 200 3318 Traceback (most recent call last): File "/Users/Administrator/Downloads/tmo-monitor-2.0.0-beta6/./bin/tmo-monitor.py", line 83, in <module> signal_info = gw_control.get_signal_info() File "/usr/local/lib/python3.9/site-packages/tmo_monitor/gateway/nokia.py", line 141, in get_signal_info info = signal_request.json() File "/usr/local/lib/python3.9/site-packages/requests/models.py", line 910, in json return complexjson.loads(self.text, **kwargs) File "/usr/local/Cellar/[email protected]/3.9.13_1/Frameworks/Python.framework/Versions/3.9/lib/python3.9/json/__init__.py", line 346, in loads return _default_decoder.decode(s) File "/usr/local/Cellar/[email protected]/3.9.13_1/Frameworks/Python.framework/Versions/3.9/lib/python3.9/json/decoder.py", line 337, in decode obj, end = self.raw_decode(s, idx=_w(s, 0).end()) File "/usr/local/Cellar/[email protected]/3.9.13_1/Frameworks/Python.framework/Versions/3.9/lib/python3.9/json/decoder.py", line 355, in raw_decode raise JSONDecodeError("Expecting value", s, err.value) from None json.decoder.JSONDecodeError: Expecting value: line 1 column 1 (char 0)

    opened by jetblackrx89 4
  • Could not post reboot request

    Could not post reboot request

    Using Nokia 5G "trashcan" on firmware 1.2104.00.0286

    2022/06/15 00:20:38 [DEBUG] Starting new HTTP connection (1): 192.168.12.1:80 2022/06/15 00:20:39 [DEBUG] http://192.168.12.1:80 "GET /dashboard_device_info_status_web_app.cgi HTTP/1.1" 200 649 2022/06/15 00:20:39 [INFO] Reboot requested. 2022/06/15 00:20:39 [INFO] Rebooting. 2022/06/15 00:20:39 [DEBUG] Starting new HTTP connection (1): 192.168.12.1:80 2022/06/15 00:20:39 [DEBUG] http://192.168.12.1:80 "GET /login_web_app.cgi?nonce HTTP/1.1" 200 369 2022/06/15 00:20:39 [DEBUG] Starting new HTTP connection (1): 192.168.12.1:80 2022/06/15 00:20:39 [DEBUG] http://192.168.12.1:80 "POST /login_web_app.cgi HTTP/1.1" 200 32 2022/06/15 00:20:39 [CRITICAL] Could not post reboot request, exiting. (program terminates here)

    Doesn't seem to be able to reboot the router, so it just exits?

    Also all of this happens within a few seconds, it's not like it sends an initial reboot command then waits for the router, then fails.

    opened by Josephur 2
  • pip3 install .

    pip3 install .

    Sorry, Python noob here.

    On an uppdated RaspberryPi Python 3.9.2 pip 20.3.4 from /usr/lib/python3/dist-packages/pip (python 3.9) pip3 install . yields ERROR: Directory '.' is not installable. Neither 'setup.py' nor 'pyproject.toml' found.

    Help

    Do I need to download the project and unpack it in the home directory?

    opened by DWomack 1
  • Format uptime output to Day:Hours:Minute:seconds, similar to the GUI

    Format uptime output to Day:Hours:Minute:seconds, similar to the GUI

    day = uptime // (24 * 3600) uptime = uptime % (24 * 3600) hour = uptime // 3600 uptime %= 3600 minutes = uptime // 60 uptime %= 60 seconds = uptime

    Not sure where to insert this, without possibly breaking stuff.

    opened by SteveEbey73742 0
Releases(v2.0.0-beta7)
  • v2.0.0-beta7(Aug 6, 2022)

    What's Changed

    • safely access 5g band info for arcadyan gateway - fixes #75 by @highvolt-dev in https://github.com/highvolt-dev/tmo-monitor/pull/76

    Full Changelog: https://github.com/highvolt-dev/tmo-monitor/compare/v2.0.0-beta6...v2.0.0-beta7

    Source code(tar.gz)
    Source code(zip)
  • v2.0.0-beta6(May 8, 2022)

    What's Changed

    • 🐛 calculate arcaydyan eNB ID using decimal base fixes #68 caused by fir… by @highvolt-dev in https://github.com/highvolt-dev/tmo-monitor/pull/70

    Thanks to @SteveEbey73742 for reporting.

    Full Changelog: https://github.com/highvolt-dev/tmo-monitor/compare/v2.0.0-beta5...v2.0.0-beta6

    Source code(tar.gz)
    Source code(zip)
  • v2.0.0-beta5(Apr 10, 2022)

    What's Changed

    • ⚙️ add IPv6 ping support, fixes #43 by @highvolt-dev in https://github.com/highvolt-dev/tmo-monitor/pull/61
    • 🐛 use ping6 binary if available for ipv6 ping functionality, fixes #43 by @highvolt-dev in https://github.com/highvolt-dev/tmo-monitor/pull/62
    • 🐛 conditionally check for lsid cookie to avoid runtime error with nokia… fixes #66 by @highvolt-dev in https://github.com/highvolt-dev/tmo-monitor/pull/67

    Full Changelog: https://github.com/highvolt-dev/tmo-monitor/compare/v2.0.0-beta4...v2.0.0-beta5

    Source code(tar.gz)
    Source code(zip)
  • v2.0.0-beta4(Feb 4, 2022)

    What's Changed

    • 🐛 Fixed tmo_monitor.gateway module installation by @hugoh in https://github.com/highvolt-dev/tmo-monitor/pull/51
    • ⚙️ use meaningful exit status codes, fixes #52 by @highvolt-dev in https://github.com/highvolt-dev/tmo-monitor/pull/53
    • ⚙️ Log to syslog by @hugoh in https://github.com/highvolt-dev/tmo-monitor/pull/55
    • 🐛 Feature/bugfix web login nokia by @highvolt-dev in https://github.com/highvolt-dev/tmo-monitor/pull/57

    Full Changelog: https://github.com/highvolt-dev/tmo-monitor/compare/v2.0.0-beta3...v2.0.0-beta4

    Source code(tar.gz)
    Source code(zip)
  • v2.0.0-beta3(Jan 23, 2022)

    What's Changed

    • 🐛 Fix for #34 by @AndrewPardoe in https://github.com/highvolt-dev/tmo-monitor/pull/40
    • ⚙️ Support for Busybox's ping by @hugoh in https://github.com/highvolt-dev/tmo-monitor/pull/46
    • ⚙️ Add support for Arcadyan KVD21 Gateway by @highvolt-dev in https://github.com/highvolt-dev/tmo-monitor/pull/47
    • 📖 Updated README

    New Contributors

    • @hugoh made their first contribution in https://github.com/highvolt-dev/tmo-monitor/pull/46

    Full Changelog: https://github.com/highvolt-dev/tmo-monitor/compare/v2.0.0-beta2...v2.0.0-beta3

    Source code(tar.gz)
    Source code(zip)
  • v2.0.0-beta2(Jan 8, 2022)

    What's Changed

    • 🧹 Regenerated requirements.txt with pipreqs by @AndrewPardoe in https://github.com/highvolt-dev/tmo-monitor/pull/33 and @highvolt-dev in https://github.com/highvolt-dev/tmo-monitor/pull/38
    • 🐛 Bugfixes for configuration parsing between .env and command-line flags by @highvolt-dev in 9e2df70 fixes #31
    • 🐛 Support macOS ping output format by @delikat in https://github.com/highvolt-dev/tmo-monitor/pull/36 and @highvolt-dev in https://github.com/highvolt-dev/tmo-monitor/pull/39
    • 📖 Updated README

    New Contributors

    • @delikat made their first contribution in https://github.com/highvolt-dev/tmo-monitor/pull/36

    Full Changelog: https://github.com/highvolt-dev/tmo-monitor/compare/v2.0.0-beta1...v2.0.0-beta2

    Source code(tar.gz)
    Source code(zip)
  • v2.0.0-beta1(Dec 31, 2021)

    What's Changed

    • v2: Add .env file for configuration & rework args by @AndrewPardoe in https://github.com/highvolt-dev/tmo-monitor/pull/23
    • Add basic logging functionality & log all connection metrics by @AndrewPardoe in https://github.com/highvolt-dev/tmo-monitor/pull/24
    • Address the feedback from #24 by @AndrewPardoe in https://github.com/highvolt-dev/tmo-monitor/pull/30

    New Contributors

    • @AndrewPardoe made their first contribution in https://github.com/highvolt-dev/tmo-monitor/pull/23

    Full Changelog: https://github.com/highvolt-dev/tmo-monitor/compare/v1.8.0...v2.0.0-beta1

    Source code(tar.gz)
    Source code(zip)
  • v1.8.0(Dec 12, 2021)

  • v1.7.0(Oct 6, 2021)

    With v1.7.0, tmo-monitor brings support for checking that you are connected to a given eNB ID, which lets you specify which cell site you expect your gateway to be connecting to.

    Source code(tar.gz)
    Source code(zip)
  • v1.6.0(Oct 4, 2021)

    This release introduces primitive bootloop prevention by checking the gateway uptime to ensure that the script will not prematurely reboot if is running at a frequent interval.

    By default, the gateway must be up for at least 90 seconds to proceed with an implicit reboot.

    This is intended to give enough time for the gateway to start accepting API requests, establish a cellular connection, and stabilize its choice in band selection.

    Gateway uptime check is configurable with the --uptime flag, which takes an uptime threshold measured in integer seconds.

    Source code(tar.gz)
    Source code(zip)
  • v1.5.0(Oct 1, 2021)

  • 1.4.0(Sep 29, 2021)

    Allows user-defined preferred 4g and 5g bands. Will reboot when band criteria are not met.

    Also in this release:

    • skip rebooting
    • skip 5g band check
    Source code(tar.gz)
    Source code(zip)
Automatic Proxy scraper and Proxy-rotating Nitro Generator.

Automatic Proxy scraper and Proxy-rotating Nitro Generator.

Tawren007 2 Nov 08, 2021
LGPL Pure Python OPC-UA Client and Server

LGPL Pure Python OPC-UA Client and Server

Free OPC-UA Library 1.2k Jan 04, 2023
Light, simple RPC framework for Python

Agileutil是一个Python3 RPC框架。基于微服务架构,封装了rpc/http/orm/log等常用组件,提供了简洁的API,开发者可以很快上手,快速进行业务开发。

16 Nov 22, 2022
MoreIP 一款基于Python的面向 MacOS/Linux 用户用于查询IP/域名信息的日常渗透小工具

MoreIP 一款基于Python的面向 MacOS/Linux 用户用于查询IP/域名信息的日常渗透小工具

xq17 9 Sep 21, 2022
Qtas(Quite a Storage)is an experimental distributed storage system developed by Q-team in BJFU Advanced Computer Network sources.

Qtas(Quite a Storage)is a experimental distributed storage system developed by Q-team in BJFU Advanced Computer Network sources.

Jiaming Zhang 3 Jan 12, 2022
A simple electrical network analyzer, BASED ON computer-aided design.

Electrical Network Analyzer A simple electrical network analyzer. Given the oriented graph of the electrical network (circut), BASED ON computer-aided

Ahmad Abdulrahman 4 Oct 15, 2022
Ip-Seeker - See Details With Public Ip && Find Web Ip Addresses

IP SEEKER See Details With Public Ip && Find Web Ip Addresses Tool By Heshan

M.D.Heshan Sankalpa 1 Jan 02, 2022
a decompilation of NAP36 the widevine removal software for amz and nf used by p2p groups until it stoped working due to it using expired cdm keys

NAP36 a decompilation of NAP36 the widevine removal software for amz and nf used by p2p groups until it stoped working due to it useing expired cdm ke

9 Aug 29, 2021
Home Assistant integration for MyEnergi devices

myenergi for Home Assistant myenergi custom component for Home Assistant This is a very early release, will add more documentations soon! This compone

Johan Isacsson 70 Dec 18, 2022
Slowloris is basically an HTTP Denial of Service attack that affects threaded servers.

slowrise-ddos-tool What is Slowloris? Slowloris is basically an HTTP Denial of S

DEMON cat 4 Jun 19, 2022
RollerScanner — Fast Port Scanner Written On Python

RollerScanner RollerScanner — Fast Port Scanner Written On Python Installation You should clone this repository using: git clone https://github.com/Ma

68 Nov 09, 2022
A Scapy implementation of SMS-SUBMIT and (U)SIM Application Toolkit command packets.

A Scapy implementation of SMS-SUBMIT and (U)SIM Application Toolkit command packets.

mnemonic 83 Dec 11, 2022
Asyncer, async and await, focused on developer experience

Asyncer, async and await, focused on developer experience. Documentation: https:

Sebastián Ramírez 895 Dec 28, 2022
The can package provides controller area network support for Python developers

python-can The Controller Area Network is a bus standard designed to allow microcontrollers and devices to communicate with each other. It has priorit

Brian Thorne 904 Dec 29, 2022
Juniper SNMP Migrations For Python

Juniper SNMP Migrations This example will show how to use the PyEZ plugin for Nornir to build a NETCONF connection to a remote device validate that SN

Calvin Remsburg 1 Jan 07, 2022
Dark Utilities - Cloudflare Uam Bypass

Dark Utilities - Cloudflare Uam Bypass

Inplex-sys 26 Dec 14, 2022
EUserv - A Python script which can help you renew your free EUserv IPv6 VPS

English | 简体中文 This project comes from https://github.com/a-beam-of-light/eu_ex

阿两 0 Jan 06, 2022
Converts from PC formatted MAC addresses (hardware addresses) to Cisco format or vice-versa

MAC-Converter Converts from PC formatted MAC addresses (hardware addresses) to Cisco format or vice-versa Stores the results to a file in the same dir

Stew Alexander 0 Dec 24, 2022
This is an open project to maintain a list of domain names that serve YouTube ads

The YouTube ads blocklist project This is an open project to maintain a list of domain names that serve YouTube ads. The original project only produce

Evan Pratten 574 Dec 30, 2022
Aiotor - a pool of proxies, shifting on each request

Aiotor - a pool of proxies, shifting on each request

Leon 32 Dec 26, 2022