Need help: My IPv6 comnet non-root nodes are unable to establish a connection with the root node inside a podman container

I’m completely stuck at the moment with Ipv4 rootless and Ipv6 rootfull

I’ve raised this issue here and I’ll soon add the issue to podman discussions.

For IPv6 rootfull, the issue is more vague to me, because I’m not even sure if the IP my node is trying to connect with is the correct one.

I notice that [fdc2:9f3e:3d11:40c::1]:12001 is not the same as the local address [fdc2:9f3e:3d11:40c::2]:12001. It’s in fact the gateway address. Is that the address it should connect to?

ps -ef | grep node_dir_1

sn_node -v 
--idle-timeout-msec 5500 
--keep-alive-interval-msec 4000 
--skip-auto-port-forwarding 
--local-addr [fdc2:9f3e:3d11:040c::2]:12001 
--public-addr [2a02:a465:21f:1:f7f2:5947:3e84:c7d5]:12001 
--log-dir /root/.safe/node/node_dir_1
--root-dir /root/.safe/node/node_dir_1 
--hard-coded-contacts ["[2a02:a465:21f:1:f7f2:5947:3e84:c7d5]:12000"]

Error of node #1 (root node is #0)

ERROR 2022-04-01T15:38:36.634678Z [sn/src/bin/sn_node.rs:L300]:
 ➤ Unfortunately we are unable to establish a connection to your machine 
([fdc2:9f3e:3d11:40c::1]:12001) 
either through a public IP address, or via IGD on your router. 
Please ensure that IGD is enabled on your router - 
if it is and you are still unable to add your node to the testnet, 
then skip adding a node for this testnet iteration. 
You can still use the testnet as a client, 
uploading and downloading content, etc. https://safenetforum.org/

sudo podman network inspect podman

[
     {
          "name": "podman",
          "id": "2f259bab93aaaaa2542ba43ef33eb990d0999ee1b9924b557b7be53c0b7a1bb9",
          "driver": "bridge",
          "network_interface": "podman0",
          "created": "2022-03-16T06:56:37.768948963+01:00",
          "subnets": [
               {
                    "subnet": "fdc2:9f3e:3d11:40c::/64",
                    "gateway": "fdc2:9f3e:3d11:40c::1"
               }
          ],
          "ipv6_enabled": true,
          "internal": false,
          "dns_enabled": false,
          "ipam_options": {
               "driver": "host-local"
          }
     }
]

ip addr inside container

bash-5.1# ip addr
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
    inet6 ::1/128 scope host
       valid_lft forever preferred_lft forever
2: eth0@if33: <BROADCAST,MULTICAST,UP,LOWER_UP,M-DOWN> mtu 1500 qdisc noqueue state UP qlen 1000
    link/ether 6a:9e:99:4c:fb:72 brd ff:ff:ff:ff:ff:ff
    inet6 fdc2:9f3e:3d11:40c::2/64 scope global
       valid_lft forever preferred_lft forever
    inet6 fe80::689e:99ff:fe4c:fb72/64 scope link
       valid_lft forever preferred_lft forever
1 Like

I dont know Podman or your network topology so I may be wrong about your problem. Sometimes is hard to understand network topology when using virtualization.

Usually virtualization has at least two networking otions:
Bridge - virtual instances act like other physical devices in your LAN, they see other devices and your router is their gateway, the host pc is seen as equal peer to the VMs
Routed (or NAT) - virtual instances live in separate virtual network existing only on the host pc, they can communicate only with each other and when they want to communicate outside, they have to go through the host pc acting as a gateway router

Can the instances, that should be able to communicate, ping each other?

1 Like

How would ping one instance to another?
They should all be on the same IP, just a different port.

I just realized by the way that I could and perhaps should give each node a separate container.

That is what I would do - each node has its own container.

2 Likes

This topic was automatically closed after 59 days. New replies are no longer allowed.