Skip to content
 
 

Latest commit

 

History

98 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Q-TEAM

Release     License     Telegram


ICMPTunnel

ICMPTunnel is a proprietary binary tool developed by Q-TEAM.
It demonstrates tunneling over the ICMP protocol (commonly used by ping).


πŸ› οΈ Installation

πŸ“₯ Installer (Recommended)

  1. Just run this command to download and start:
bash <(curl -Ls https://raw.githubusercontent.com/Qteam-official/ICMPTunnel/main/install.sh)
  1. You can manage the tunnel using the following command:
q-icmp

πŸ“¦ Offline Installation (Internet restrictions)

If you want to install ICMPTunnel without downloading from GitHub (e.g. in an offline environment), follow these steps:

  1. Download the latest release binary (ICMPTunnel) from the Releases page using another computer with internet access.
  2. Copy both install.sh and the downloaded ICMPTunnel binary to your target (offline) Linux machine, placing them in the same directory.
  3. Make sure both files are executable:
chmod +x install.sh ICMPtunnel
  1. Run the installer:
sudo ./install.sh
  1. When prompted, select 2 for Offline Installation.
  2. Follow the interactive prompts to choose Client or Server mode and complete the setup.

After installation, you can manage the tunnel using:

q-icmp

Note: The binary file must be named exactly ICMPTunnel and be in the same directory as install.sh during installation.

🚒 Install With Docker Compose

  1. Install Docker using the official installation script:
curl -fsSL https://get.docker.com | sh
  1. Make a new working directory:
mkdir ICMPTunnel && cd ICMPTunnel
  1. Create docker compose configuration file.
  • Open docker-compose.yml in your favorite editor (e.g. nano):
nano docker-compose.yml
  • Copy&Paste the following and save. (ctrl + x, y and enter for nano)
services:
  icmptunnel:
    image: thisispogger/icmptunnel:latest
    container_name: icmptunnel
    restart: unless-stopped
    network_mode: host
    privileged: true
    cap_add:
      - NET_ADMIN
      - NET_RAW
    volumes:
      - ./config.json:/app/config.json:ro
    healthcheck:
      test: ["CMD", "pgrep", "-x", "ICMPTunnel"]
      interval: 30s
      timeout: 10s
      retries: 3
      start_period: 5s
  1. Create the proper ICMPTunnel configuration file:
  • Open config.json in your favorite editor (e.g. nano):
nano config.json

Server Configuration Example:

{
  "type": "server",
  "listen_port_socks": "1010",
  "server": "",
  "timeout": 60,
  "block_country": "IR",
  "dns": "8.8.8.8",
  "key": 1234
}

Client Configuration Example:

{
  "type": "client",
  "listen_port_socks": "1010",
  "server": "127.0.0.1",
  "timeout": 60,
  "block_country": "IR",
  "dns": "8.8.8.8",
  "key": 1234
}

Refer to Configuration for more details

  1. Run ICMPTunnel:
docker compose up -d

Configuration

Tunnel configuration is done via config.json using key/value pairs:

Key Description Accepted Values
type Switch between server/client mode "server"/"client"
listen_port_socks (Client mode only) SOCKS5 port to listen on Min: 0, Max: 65535
server (Client mode only) Server endpoint to connect to Server IP (e.g. 127.0.0.1)
timeout Connection timeout in seconds Integer Value > 0
block_country Used to block outgoing traffic to specific countries' IPs based on GeoIP 2-Letter country codes (e.g. "IR")
dns Custom Upstream DNS server DNS over IP (e.g. "8.8.8.8"
key Private key for security purposes Integer Value

⚠️ Note: key should be the same on both server and client configurations.


βœ… Supported Platforms:

  • Linux (amd64, arm64, arm, 386)
  • Windows (amd64, 386)
  • macOS (darwin-amd64, darwin-arm64)

βœ… Tested on:

  • 🐧 Ubuntu 18.04, 20.04, 22.04+
  • 🐧 Debian 10/11/12+
  • 🐧 Kali, Mint, Fedora, CentOS, AlmaLinux, Rocky
  • 🐧 Arch, Manjaro, openSUSE
  • 🐧 Pop!_OS, Zorin OS, and other modern distros
  • πŸͺŸ Windows 10/11 (both 64-bit and 32-bit)
  • 🍎 macOS (Intel & Apple Silicon)

Ensure ICMP (ping) is allowed on both sides (no firewall blocks)

Root is NOT required in most modern systems

No ports need to be opened manually β€” it works via ICMP!


🧱 Binary Distribution

This repository contains the official binary release of ICMPTunnel, developed by Q-TEAM.

It is provided as a ready-to-use executable with no additional components.


🚫 Usage Restrictions

This binary is the intellectual property of Q-TEAM.

You are not allowed to:

  • Copy or redistribute this binary
  • Modify or reverse engineer it
  • Use it for unauthorized or illegal purposes

without explicit written permission from Q-TEAM.


⚠️ Disclaimer

ICMP-based tunneling may be restricted on some networks.
Use of this tool is limited to legal, educational, or testing purposes in controlled environments only.

Q-TEAM is not responsible for any misuse of this software.


πŸ“ˆ Star History

Star Chart

Growth of the community over time πŸš€ β€” Thank you for every ⭐!


Β© 2025 Q-TEAM. All rights reserved.

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages