RNS Logo

rns.recipes

◈ 9ce92808be498e9e05590ff27cbfdfe4

How is using reticulum like in highly censored countries?

Question Discussion

Started by welo ·

#1

I live in a privileged democratic and free country so do most people here, so we lack good perspective on how it's like to live in more censored regimes

Screenshot_20260712_112101.png
(screenshot of rmap.world showing china to iran with quite a few nodes)

If you are from a country that isn't as friendly, give your thoughts, wants and fears when it comes to reticulum. If you are operating a node there, how is that like?

Anonymous
#2

Its about the same like in all other countries. There is a law that explain what power you are allowed to transmit and what frequency you can use.
There is no legal difference between Meshtastic and Reticulum. Both send encrypted messages around.

Anonymous
#3

Hello! I hope you are well, I used to follow your posts sometimes (:
Well, I am from Iran...
One thing is that the network nodes can be copied and not deleted, so that in case of an international internet outage, it can be connected to at least the nodes inside Iran (if it can be reopened!), and in case of severe filtering, it can find nodes to connect to...

And I was always waiting for the internet-free interfaces to expand (people-oriented, not country-oriented)

Usually, there are a lot of disruptions here, even if the internet is connected, for example, some internet protocols may not work at all, for example, during an internet outage, you could only connect through dns tunnels, at a speed of a few bytes (:

So I think it would be a good idea to add different protocols to it by default, or simplify connecting to a server with several different protocols, so that it becomes more common..

I don't know at this moment!, and thank you for this article you created (:

 

@@@@@ Google Translate...

Anonymous
#4

And some Iranians are probably afraid that their IP will become public, no, IP + location, and that's for a network like this. Maybe their fear is real and they'll be deprived, maybe not, I don't know, but it's scary sometimes.

Zenith Admin
#5

RE: DNS tunnelling

Someone has already made a very awesome guide on how to use Reticulum over Iodine, a self-hosted DNS tunnel.

Originally posted by @metafronic on the GH Discussions (https://github.com/markqvist/Reticulum/discussions/1002), but I'll post it here too:

Repost:

Some of you may know about IP over DNS tunnels like iodine https://github.com/yarrick/iodine
This technology is super useful in special use-cases like when connected to captive portal wifi (such as on airlines) where internet access is blocked, but DNS functions normally. Iodine creates an IP tunnel over DNS queries and responses. The round-trip-time (RTT) is quite high, and the bandwidth low (20kbps ish), but it may be the only option in some cases.

I tried this out and can confirm that Reticulum over DNS works very smooth!

Iodine supplies the IP link, while transport is done via a UDPInterface (due to the high RTT)

Full Setup

You need a domain name and a server exposed on the internet via port 53/udp

Example domain: example.com
Example external ip: 123.123.123.123

On your domain DNS setting, set your server external ip as the NS for a subdomain, eg NS record iodine.example.com to 123.123.123.123

Iodine Server

Install iodine on the server:

sudo apt -y install iodine

Set iodine parameters. The IP should be an unused /24 subnet on your host. Set a password

# /etc/default/iodine
START_IODINED="true"
IODINED_ARGS="-c 10.0.0.1 iodine.example.com"
IODINED_PASSWORD="secretpassword"

Enable and start the service

sudo systemctl unmask iodined
sudo systemctl enable iodined
sudo systemctl start iodined

Add a UDP interface to your reticulum interface.

Theoretically you could set the destination to a .255 address so that it broadcasts to all connected iodine clients. Iodine clients will be assigned an address based on the amount of connections. In our case the first client is 10.0.0.2, second client at .3 etc.

  [[Iodine UDP]]
    type = UDPInterface
    enabled = yes
    listen_ip = 10.0.0.1
    listen_port = 6969
    forward_ip = 10.0.0.2 # or 10.0.0.255 for broadcast
    forward_port = 6969
    mode = access_point

We set the mode to access_point to reduce the amount of traffic to a minimum.

Iodine Client

Install iodine on the client machine and start the connection

sudo apt -y install iodine
sudo iodine -f -P secretpassword iodine.example.com

Check that you can ping the server:

ping 10.0.0.1

Add the interface to your reticulum config

  [[Iodine UDP]]
    type = UDPInterface
    enabled = yes
    listen_ip = 0.0.0.0
    listen_port = 6969
    forward_ip = 10.0.0.1       
    forward_port = 6969
    mode = roaming

Start nomadnet and observe that there is traffic going in and out

Results

Messaging and nomadnet browsing works fine. It may be a good idea to have this as a backup solution and not use it 24/7 as some domain resolvers may block the domain due to abuse concerns etc.

 

Anonymous
#6

Thank you very much, it can be good for emergencies +, and well, a question has been bothering me, now that the internet connection varies from operator to operator, for example, Irancell or hamrahaval or Telecommunications (Iranian internet service providers) may work on one of them, on another protocol, and for example, if one protocol does not work on one, it does on the others! And sometimes if they want, they block the international internet very severely, which is worse! For example, sometimes Tor may only work with one of its bridges between snowflake obfs 4 meek_lite webtunnel, etc., and sometimes Tor may not work or be extremely slow on an Internet service provider with all of these. I know that for those who have a simple TCP connection to the international Internet, it doesn't matter, but from my perspective, when I see this line, I always want to add various connection methods to the program's defaults and anyone can easily support these types of protocols by simply clicking an option to expand its setup...

Of course, it's great to have different types of connections, but I think it's much better to have it set up publicly and not just by an individual...

I'm still curious, I didn't think Reticulum would care about severely restricted countries at first, especially that DNS tunnel. I saw it, it was strange that Mark was happy about it!

Anonymous
#7

Anonymous wrote:

...
I'm still curious, I didn't think Reticulum would care about severely restricted countries at first, especially that DNS tunnel. I saw it, it was strange that Mark was happy about it!

Part of Reticulum's concept is censorship-resistance and the ability to run over almost any connection you can get (although it does limit applications, and the realistic absolute minimum is in the kilobytes per second range mostly)

Reticulum is not one network. It is a tool for building thousands of networks. Networks without kill-switches, surveillance, censorship and control. Networks that can freely interoperate, associate and disassociate with each other. Reticulum is Networks for Human Beings.

Post a Reply

Supports Markdown: **bold**, *italic*, `code`, ```code blocks```, [links](url)

Log in to upload images

Quote
Copied to clipboard