Skip to content

BenLent123/YggComm

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

28 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

UDPcomm

Overview

Real time peer-to-peer UDP CLI chat (RTC-p2p-chat) (long ahhh word) via IPv6 and Yggdrasil. Using Yggdrasil you are given a unique IPV6 address and encoded private key which allows for encrypted (NOT ANNONYMOUS!) communication. This works with UDP hole punching so no server, however, both peers need to start roughly at the same time.

Requirments

This program uses yggdrasil for the IPV6 mesh network therefore it is required to have this installed and functional!!

CURRENTLY ONLY FOR LINUX!!!!!!!!!!!!!!!!!!!

a public node in your region has to be added to yggdrasil.conf

Debian/Ubuntu:

sudo apt update
sudo apt install yggdrasil

Fedora:

sudo dnf install yggdrasil

Arch Linux:

sudo pacman -S yggdrasil

Manual install (using wget):

wget https://github.com/yggdrasil-network/yggdrasil-go/releases/latest/download/yggdrasil-linux-amd64 -O yggdrasil
chmod +x yggdrasil
sudo mv yggdrasil /usr/local/bin/

Usage

Build the project:

make

Run the executable:

./yggcomm my_port peerIPV6 peerPort
./yggcomm -h (or) -help

Features

  • IPv6 via Yggdrasil mesh integration
  • UDP holepunching
  • encryption via Yggdrasil mesh network
  • QR generation using libqrencode
  • basic CLI

IMPORTANT

  • this is ipv6 and end2end encrypted HOWEVER not private
  • this is a work in progress so this might have issues :(
  • Yggdrasil conf has to be created

License

See LICENSE.md for MIT License details.

About

Basic p2p real time UDP holepunching communciation via yggdrasil mesh network

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published