Tool for ROS 2 IP Discovery + System Monitoring

Overview

rclshark​ 🐢 🦈

latest : v1.0.1

Monitor the status of computers on a network using the DDS function of ROS2.

開発者向けのツールで、リモートマシンへのSSHログインの際に必要なローカルIPアドレスを簡単に発見します。リモートマシンに対して拡張機能を追加し、CPU温度などのマシン内部の情報をログイン無しでモニタリングすることもできます。

rclsharkはセットアップされたデバイスに対してIPアドレス固定などのデバイスごとの面倒なセットアップ無しにIPアドレスの取得を行い、デバイスの状態を取得することができます。インストールも簡単で、組み込みコンピュータの新規開発のお供として役に立ちます。

rclshark_swim

Documents

Requirements

  • ROS2 foxy-core Installation
  • python3-colcon-common-extensions
  • build-essential

rclshark​ 🐢 🦈

rclshark is an IP address display system that takes advantage of the DDS publishing nature of the ros2 node to the local network, and can recognize any device with ROS2 installed. rclshark is also a service server, and has a function to report computer status using psutil.

See rclshark-smi for details.

Usage 1 : Run as ROS2 RUN

$ source /opt/ros/foxy/setup.bash
$ mkdir -p ~/ros2_ws/src
$ cd ~/ros2_ws/src
$ git clone --recursive https://github.com/Ar-Ray-code/rclshark.git
$ cd ~/ros2_ws/
$ colcon build --symlink-install
$ source ~/ros2_ws/install/local_setup.bash
$ ros2 run rclshark rclshark

Usage 2 : Back-end installation (systemd)

Installation (Startup Automatically)

In case of$ROS_DISTRO=foxy,

$ git clone https://github.com/Ar-Ray-code/rclshark.git
$ sudo bash rclshark/rclshark/install.bash foxy

If you want to enable rclshark immediately, run at CUI (= multi-user-target) $ sudo systemctl start rclshark.service.

uninstall

$ sudo bash ~/ros2_ws/src/rclshark/rclshark/install.bash uninstall

Usage 3 : Docker

$ docker pull ray255ar/rclshark:latest

RUN docker container

$ docker run -it --rm rclshark:local

Confirmation rclshark

Since rclshark is an application that uses the basic functions of ROS2, you can find it with the ros2 command.

## Confirmation rclshark 1
$ ros2 node list | grep ip_
> /ip_192.168.11.10_end
> /ip_192.168.11.22_end
## Confirmation rclshark 2
$ ros2 service list | grep endcb
> /ip_192.168.11.10_endcb
> /ip_192.168.11.22_endcb

Now you can safely forget your IP address. 😉

rclshark-smi​ 🐢 🦈

You can use rclshark to check the hardware status of multiple computers. You don't even need to bother opening htop. Good for you! 😊

IP addresses are sorted in ascending order and are dynamically added and removed. See Usage 2 for installing rclshark-smi. If you want to use only rclshark-smi, type sudo systemctl disable rclshark.service. to use only rclshark-smi.

rclshark-smi-docker

There are two ways to run.

Usage 1 : Run as ROS2 RUN

$ source /opt/ros/foxy/setup.bash
$ mkdir -p ~/ros2_ws/src
$ cd ~/ros2_ws/src
$ git clone --recursive https://github.com/Ar-Ray-code/rclshark.git
$ cd ~/ros2_ws/
$ colcon build --symlink-install
$ source ~/ros2_ws/install/local_setup.bash
$ ros2 run rclshark-smi rclshark_smi.py

Usage 2 : Run from /usr/local/bin/rclshark-smi

## Install
$ git clone https://github.com/Ar-Ray-code/rclshark.git
$ sudo bash rclshark/rclshark/install.bash foxy
$ sudo systemctl disable rclshark.service
## Run rclshark-smi
$ rclshark-smi

Demo

YouTube

Operation method

  • 'q'-> Enter : exit rclshark-smi

Known Problems​ ​(rclshark-smi) ??

  • If the rclshark process started using Docker is interrupted, rclshark-smi will freeze. In that case, rclshark-smi will exit as the Timeout after 5 seconds. Keep in mind that the same event can also happen with non-Docker rclshark.
  • We are considering releasing a lightweight version of rclshark-smi that does not involve sending or receiving messages.

About writer 🐢 🦈

You might also like...
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.

This is a Client-Server-System which can share the screen from the server to client and in the other direction.

Screenshare-Streaming-Python This is a Client-Server-System which can share the screen from the server to client and in the other direction. You have

This is a Client-Server-System which can send audio from a microphone from the server to client and in the other direction.

Audio-Streaming-Python This is a Client-Server-System which can send audio from a microphone from the server to client and in the other direction. You

OptiPLANT is a cloud-based based system that empowers professional and non-professional data scientists to build high-quality predictive models

OptiPLANT OptiPLANT is a cloud-based based system that empowers professional and non-professional data scientists to build high-quality predictive mod

Simple local RPG turn-based to play while learn something using the anki system
Simple local RPG turn-based to play while learn something using the anki system

Simple local RPG turn-based to play while learn something using the anki system

A Python tool used to automate the execution of the following tools : Nmap , Nikto and Dirsearch but also to automate the report generation during a Web Penetration Testing
A Python tool used to automate the execution of the following tools : Nmap , Nikto and Dirsearch but also to automate the report generation during a Web Penetration Testing

📡 WebMap A Python tool used to automate the execution of the following tools : Nmap , Nikto and Dirsearch but also to automate the report generation

ANalyse is a vehicle network analysis and attack tool.
ANalyse is a vehicle network analysis and attack tool.

CANalyse is a tool built to analyze the log files to find out unique datasets automatically and able to connect to simple user interfaces suc

Tool for quickly gathering information from Shodan.io about the number of IPs which satisfy large number of different queries

TriOp Tool for quickly gathering information from Shodan.io about the number of IPs which satisfy large number of different queries For furt

Passive TCP/IP Fingerprinting Tool. Run this on your server and find out what Operating Systems your clients are *really* using.

Passive TCP/IP Fingerprinting This is a passive TCP/IP fingerprinting tool. Run this on your server and find out what operating systems your clients a

Releases(v1.0.3)
  • v1.0.3(Sep 29, 2021)

    The following changes have been made in v1.0.2 to v1.0.3. It is possible to mix v1.0.2 and v1.0.3.

    Change of installation method (example) sudo bash install.bash /opt/ros/foxy. Change in the readme

    Raspbian-rclshark

    The best Raspberry Pi OS.

    :exclamation: Pre-integrated image is also available for download for a limited time.

    Raspberry Pi OS (Raspbian) and ROS Foxy pre-built images are available. This image comes with rclshark, which allows SSH login just by connecting an Ethernet without connecting a display.

    Try the new remote access experience.

    Write to SD

    Run the following command after download two files split-raspbian-00 and split-raspbian-01 .

    sudo apt install p7zip-full
    cat split-raspbian-00 split-raspbian-01 >> rpi.7z
    7z x rpi.7z
    

    After that, write image to SD card using Raspberry Pi Imager.

    Start Raspberry Pi

    • Connect

      • Written SD Card
      • Power 5V 3A
      • Ethernet
    • Not connect

      • Keyboard & Mouse
      • Display

    Search Raspberry Pi

    Run ROS Command on your laptop.

    source /opt/ros/foxy/setup.bash
    ros2 node list | grep end
    
    # result : /ip_192_168_11_47_end
    

    Connect Raspberry Pi by SSH !

    Source code(tar.gz)
    Source code(zip)
    split-raspbian-00(1430.51 MB)
    split-raspbian-01(849.00 MB)
  • v1.0.2(Sep 8, 2021)

    It is not compatible with previous versions (v1.0.1).

    • remove disk_percent
    • remove process_count
    • add username
    • fix other bugs

    rclshark-smi

    • Get data only once.
    • update docker (docker pull ray255ar/rclshark:v1.0.2)
    Source code(tar.gz)
    Source code(zip)
  • v1.0.1(Jul 16, 2021)

    Fixed a bug caused by username restrictions. With this update, users with usernames other than "Ubuntu" will be able to install successfully, too.

    • Change rclshark/rclshark.service

      • multi-user.target -> default.target
      • Users=ubuntu -> delete (The name of the login user will be automatically assigned during installation.)
      • Group=ubuntu -> delete
    • Add Turtle ASCII Art

    rclshark_turtle

    Source code(tar.gz)
    Source code(zip)
  • v1.0.0(Jul 8, 2021)

Owner
Ar-Ray
1st grade of National Institute of Technology(=Kosen) student. Associate degree
Ar-Ray
Mass Reverse IP Dibuat Dengan Python 3 Dan Ada Fitur Filter.

Reverse IP Tools Description. Reverse IP is a method to map an IP address to a sub domain. This tool is made in the python 3 programming language. Fea

Wan Naz ID 6 Oct 24, 2022
Python implementation of the IPv8 layer provide authenticated communication with privacy

Python implementation of the IPv8 layer provide authenticated communication with privacy

203 Oct 26, 2022
NanoChat - nano chat server and client

NanoChat This is a work in progress! NanoChat is an application for connecting with your friends using Python that uses ONLY default Python libraries.

Miss Bliss 1 Nov 13, 2021
Display ip2.network active live streams.

Display ip2.network active live streams.

Daeshon Jones 0 Oct 31, 2021
Python Scrcpy Client - allows you to view and control android device in realtime

Python Scrcpy Client This package allows you to view and control android device in realtime. Note: This gif is compressed and experience lower quality

LengYue 126 Jan 02, 2023
Get Your Localhost Online - Ngrok Alternative

Get Your Localhost Online - Ngrok Alternative

Azimjon Pulatov 442 Jan 04, 2023
🔥 Minimal performant package to asynchronously make GET requests.

Minimal performant package to asynchronously make GET requests without any dependencies other than asyncio.

Yannick Perrenet 1 Jun 01, 2022
Lightweight asyncio compatible utilities for consuming broker messages.

A simple asyncio compatible consumer for handling amqp messages.

Mehdi Kamani 3 Apr 10, 2022
Readable, simple and fast asynchronous non-blocking network apps

Fast and readable async non-blocking network apps Netius is a Python network library that can be used for the rapid creation of asynchronous non-block

Hive Solutions 120 Nov 20, 2022
Apple Store Stock Notifier monitors the availability of selected Apple devices in selected Apple stores, and sends you a notification when devices are available!

Apple Store Stock Notifier This software will immediately send you a notification via Telegram when one of your coveted Apple Devices is available in

Floris-Jan Willemsen 25 Dec 05, 2022
The C based gRPC (C++, Python, Ruby, Objective-C, PHP, C#)

gRPC - An RPC library and framework gRPC is a modern, open source, high-performance remote procedure call (RPC) framework that can run anywhere. gRPC

grpc 36.6k Dec 30, 2022
A great python/java dynamic DNS service for NameSilo, with log, email reminder...

English NameSilo DDNS is a DDNS service for NameSilo domain names for home broadband , it can automatically detect IP changes in home broadband

云牧青 77 Dec 28, 2022
Network monitoring tool

netmeter If you are looking for a tool to monitor your network interfaces, here you are. See netmeter-exporter to export Prometheus metrics. Installat

Saeid Bostandoust 97 Dec 03, 2022
This is simple script that changes the config register of a cisco router over serial so that you can reset the password

Cisco-router-config-bypass-tool- This is simple script that changes the config register of a cisco router over serial so that you can bypass the confi

James 1 Jan 02, 2022
Dnspython is a DNS toolkit for Python.

dnspython is a DNS toolkit for Python. It supports almost all record types. It can be used for queries, zone transfers, and dynamic updates. It supports TSIG authenticated messages and EDNS0.

Bob Halley 2.1k Jan 06, 2023
SMS Based Headless Browsing

Browse the internet without a network connection - Submission for ConUHacks VI

Zafir Khalid 2 Feb 07, 2022
A Powerful, Smart And Simple Userbot In Telethon

Owner: KeinShin 🇮🇳 BLACK LIGHTNING A Powerful, Smart And Simple Userbot In Telethon. Credits This is A Remix Bot Of Many UserBot. DARKCOBRA FridayUs

Akki ThePro 1 Nov 29, 2021
Library containing the core modules for the kingdom-python-server.

🏰 Kingdom Core Library containing the core modules for the kingdom-python-server. Installation Use the package manager pip to install kingdom-core. p

T10 4 Dec 27, 2021
ThorFI: A Novel Approach for Network Fault Injection as a Service

ThorFI: a Novel Approach for Network Fault Injection as a Service This repo includes ThorFI, a novel fault injection solution for virtual networks in

DESSERT research lab (Federico II University of Naples, Italy) 6 Dec 14, 2022
Simple Port Scanner With Socket Module In Python 3x

PortScanner Simple Port Scanner With Socket Module In Python 3x How To Install Requirements Of This Port Scanner sudo apt install python3;sudo apt ins

1 Nov 23, 2021