Temat: raspberry pi pełen dostęp z zerotier

Witam.
Jak w raspberry pi uzyskać pełen dostęp do urządzeń podłączonych po wifi do rpi?

Do rpi jest podłączony modem 3g w hilink. Internet jest. Mogę się po zerotier podłączyć do ssh. Tymczasowo jest podłączony też lan. Rpi połączone jest jako client do urządzenia po wifi i to do tego urządzenia chciałbym mieć pełen dostęp.
Przez openwrt zrobiłem to bez problemu i działa ale openwrt nie pozwala zainstalować mavlink-router.
Rpi do testów to 4b ale docelowo będzie to na zero 2w. Całość ma być zamontowana w łódce zanętowej i służyć jako przedłużenie zasięgu echosondy + telemetria z pixa.

eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 192.168.4.131  netmask 255.255.255.0  broadcast 192.168.4.255
        inet6 fe80::5acf:4d44:513a:d0f9  prefixlen 64  scopeid 0x20<link>
        ether dc:a6:32:df:fc:71  txqueuelen 1000  (Ethernet)
        RX packets 7125  bytes 1289337 (1.2 MiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 3390  bytes 323553 (315.9 KiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

eth1: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 192.168.1.100  netmask 255.255.255.0  broadcast 192.168.1.255
        inet6 fe80::c7de:8398:8e40:dd0e  prefixlen 64  scopeid 0x20<link>
        ether 58:2c:80:13:92:63  txqueuelen 1000  (Ethernet)
        RX packets 394  bytes 43739 (42.7 KiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 814  bytes 83203 (81.2 KiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

lo: flags=73<UP,LOOPBACK,RUNNING>  mtu 65536
        inet 127.0.0.1  netmask 255.0.0.0
        inet6 ::1  prefixlen 128  scopeid 0x10<host>
        loop  txqueuelen 1000  (Local Loopback)
        RX packets 28  bytes 2958 (2.8 KiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 28  bytes 2958 (2.8 KiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

wlan0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 192.168.10.2  netmask 255.255.255.0  broadcast 192.168.10.255
        inet6 fe80::2dda:ffe7:a4ef:76b  prefixlen 64  scopeid 0x20<link>
        ether dc:a6:32:df:fc:74  txqueuelen 1000  (Ethernet)
        RX packets 4423  bytes 267700 (261.4 KiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 99  bytes 14477 (14.1 KiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

ztfasa57soy: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 2800
        inet 192.168.10.152  netmask 255.255.255.0  broadcast 192.168.10.255
        inet6 fe80::b4d1:2dff:fe0a:4ba9  prefixlen 64  scopeid 0x20<link>
        ether b6:d1:2d:0a:4b:a9  txqueuelen 1000  (Ethernet)
        RX packets 0  bytes 0 (0.0 B)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 75  bytes 7990 (7.8 KiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

Pula IP w zerotier jest zrobiona celowo takia jak urządzenie podłączone do rpi po wifi bo tak działało na openwrt.

wlan0     IEEE 802.11  ESSID:"Deeper CHIRP+2 C3F6"
          Mode:Managed  Frequency:2.412 GHz  Access Point: D0:17:69:5B:C3:F6
          Bit Rate=24 Mb/s   Tx-Power=31 dBm
          Retry short limit:7   RTS thr:off   Fragment thr:off
          Power Management:on
          Link Quality=65/70  Signal level=-45 dBm
          Rx invalid nwid:0  Rx invalid crypt:0  Rx invalid frag:0
          Tx excessive retries:0  Invalid misc:0   Missed beacon:0

2

Odp: raspberry pi pełen dostęp z zerotier

A jak zrobiłeś to openwrt? bridge interfejsów (raczej nie) czy inna adresacja i zezwolenie na forwarding?

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

3 (edytowany przez palibrzuch 2023-03-17 13:17:36)

Odp: raspberry pi pełen dostęp z zerotier

Obecnie mam to tak zamotane, że nie działa.

Działało przy zrobieniu bridge interfejsów. Niestety wymagało to po uruchomieniu routera restartu modemu 3g ponieważ nie łączył się z internetem.
Pamiętam, że łączyłem WWAN z LAN gdzie na lan miałem 192.168.9.1

Tu potrzebuję tylko z "ztfasa57soy" pingować  192.168.10.1 na 'wlan0'
I to powinno wystarczyć.
Czyli dostać się z zerotier do wifi rpi.

4

Odp: raspberry pi pełen dostęp z zerotier

No w openwrt to na pewno nie robiłes bridge ztfasa57soy z radiem pracującym jako sta bo się nie da.

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

5

Odp: raspberry pi pełen dostęp z zerotier

W openwrt wystarczy połączyć się z echo przez WWAN i drugim radiem routera połączyć się z telefonem i wszystko działa. Problem robi się jak dodaję opcje zerotier i internetu na routerze.

Tu zamiast drugiego radia chciałbym łączyć się przez zerotier i mieć dostęp do echo podłączonej do wifi rpi.

6 (edytowany przez palibrzuch 2023-03-17 19:22:01)

Odp: raspberry pi pełen dostęp z zerotier

Tym sposobem mam dostęp do echo. https://zerotier.atlassian.net/wiki/spa … l+Networks

Zamieniłem tylko eth0 na wlan0.

Niestety gdy problem jest z bramą która musi być 192.168.10.1 to pokazuje parametry echo ale nie pokazuje głębokości.
Na openwrt też tak jest.

Teraz mam tak:

Managed Routes 2/128
192.168.10.0/23 via 192.168.11.11    
192.168.11.0/24 (LAN) 

Dodatkowo na rpi

pi@raspberrypi:~ $ ifconfig
eth0: flags=4099<UP,BROADCAST,MULTICAST>  mtu 1500
        ether dc:a6:32:df:fc:71  txqueuelen 1000  (Ethernet)
        RX packets 0  bytes 0 (0.0 B)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 0  bytes 0 (0.0 B)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

eth1: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 192.168.1.100  netmask 255.255.255.0  broadcast 192.168.1.255
        inet6 fe80::c7de:8398:8e40:dd0e  prefixlen 64  scopeid 0x20<link>
        ether 58:2c:80:13:92:63  txqueuelen 1000  (Ethernet)
        RX packets 2795  bytes 481982 (470.6 KiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 4811  bytes 489388 (477.9 KiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

lo: flags=73<UP,LOOPBACK,RUNNING>  mtu 65536
        inet 127.0.0.1  netmask 255.0.0.0
        inet6 ::1  prefixlen 128  scopeid 0x10<host>
        loop  txqueuelen 1000  (Local Loopback)
        RX packets 403  bytes 34645 (33.8 KiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 403  bytes 34645 (33.8 KiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

wlan0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 192.168.10.2  netmask 255.255.255.0  broadcast 192.168.10.255
        inet6 fe80::2dda:ffe7:a4ef:76b  prefixlen 64  scopeid 0x20<link>
        ether dc:a6:32:df:fc:74  txqueuelen 1000  (Ethernet)
        RX packets 17533  bytes 8854671 (8.4 MiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 2318  bytes 428806 (418.7 KiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

ztugaxxs: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 2800
        inet 192.168.11.11  netmask 255.255.255.0  broadcast 192.168.11.255
        inet6 fe80::b4d1:2dff:fe0a:4ba9  prefixlen 64  scopeid 0x20<link>
        ether b6:d1:2d:0a:4b:a9  txqueuelen 1000  (Ethernet)
        RX packets 1047  bytes 88117 (86.0 KiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 609  bytes 51775 (50.5 KiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0
pi@raspberrypi:~ $ iwconfig
lo        no wireless extensions.

eth0      no wireless extensions.

wlan0     IEEE 802.11  ESSID:"Deeper CHIRP+2 C3F6"
          Mode:Managed  Frequency:2.412 GHz  Access Point: D0:17:69:5B:C3:F6
          Bit Rate=48 Mb/s   Tx-Power=31 dBm
          Retry short limit:7   RTS thr:off   Fragment thr:off
          Power Management:on
          Link Quality=47/70  Signal level=-63 dBm
          Rx invalid nwid:0  Rx invalid crypt:0  Rx invalid frag:0
          Tx excessive retries:11  Invalid misc:0   Missed beacon:0

ztugasdfy  no wireless extensions.

eth1      no wireless extensions.
pi@raspberrypi:~ $ route -n
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
0.0.0.0         192.168.1.1     0.0.0.0         UG    205    0        0 eth1
0.0.0.0         192.168.10.1    0.0.0.0         UG    303    0        0 wlan0
192.168.1.0     0.0.0.0         255.255.255.0   U     205    0        0 eth1
192.168.10.0    0.0.0.0         255.255.255.0   U     303    0        0 wlan0
192.168.11.0    0.0.0.0         255.255.255.0   U     0      0        0 ztugdfxy

Nie wiem co tu można jeszcze zrobić?
Połączenie wlan0 można ustawić na sztywno z deeperem?

https://naforum.zapodaj.net/thumbs/38c337effee2.jpg

7

Odp: raspberry pi pełen dostęp z zerotier

Sprawdziłem dokładnie na routerze mir3g i przy takich ustawieniach łącząc się z siecią 5g mam połączenie z echosondą.
Teraz jak to przenieść na rpi + dodać obsługę dostępu z zerotier smile ?

network

config interface 'loopback'
    option device 'lo'
    option proto 'static'
    option ipaddr '127.0.0.1'
    option netmask '255.0.0.0'

config globals 'globals'
    option packet_steering '1'
    option ula_prefix 'fde6:5b42:5118::/48'

config device
    option name 'br-lan'
    option type 'bridge'
    list ports 'lan1'
    list ports 'lan2'

config interface 'lan'
    option device 'br-lan'
    option proto 'static'
    option netmask '255.255.255.0'
    option ip6assign '60'
    option delegate '0'
    list dns '192.168.10.1'
    option defaultroute '0'
    option ipaddr '192.168.10.10'

config interface 'Mostek'
    option proto 'relay'
    list network 'lan'
    list network 'wwan'

config interface 'wwan'
    option proto 'dhcp'

wifi

config wifi-device 'radio0'
    option type 'mac80211'
    option path '1e140000.pcie/pci0000:00/0000:00:00.0/0000:01:00.0'
    option channel '1'
    option band '2g'
    option htmode 'HT20'
    option country 'CA'
    option cell_density '0'

config wifi-device 'radio1'
    option type 'mac80211'
    option path '1e140000.pcie/pci0000:00/0000:00:01.0/0000:02:00.0'
    option band '5g'
    option htmode 'VHT80'
    option country 'CA'
    option cell_density '0'
    option channel '157'

config wifi-iface 'default_radio1'
    option device 'radio1'
    option network 'lan'
    option mode 'ap'
    option ssid 'Deeper CHIRP+2 C3F7'

config wifi-iface 'wifinet2'
    option device 'radio0'
    option mode 'sta'
    option network 'wwan'
    option encryption 'none'
    option ssid 'Deeper CHIRP+2 C3F6'

firewall

config defaults
    option output 'ACCEPT'
    option forward 'ACCEPT'
    option input 'ACCEPT'

config zone
    option name 'lan'
    option input 'ACCEPT'
    option output 'ACCEPT'
    option forward 'ACCEPT'
    list network 'lan'
    list network 'Mostek'
    list network 'wwan'

config zone
    option name 'wan'
    option output 'ACCEPT'
    option masq '1'
    option mtu_fix '1'
    option input 'REJECT'
    option forward 'REJECT'

config forwarding
    option src 'lan'
    option dest 'wan'

config rule
    option name 'Allow-DHCP-Renew'
    option src 'wan'
    option proto 'udp'
    option dest_port '68'
    option target 'ACCEPT'
    option family 'ipv4'

config rule
    option name 'Allow-Ping'
    option src 'wan'
    option proto 'icmp'
    option icmp_type 'echo-request'
    option family 'ipv4'
    option target 'ACCEPT'

config rule
    option name 'Allow-IGMP'
    option src 'wan'
    option proto 'igmp'
    option family 'ipv4'
    option target 'ACCEPT'

config rule
    option name 'Allow-DHCPv6'
    option src 'wan'
    option proto 'udp'
    option dest_port '546'
    option family 'ipv6'
    option target 'ACCEPT'

config rule
    option name 'Allow-MLD'
    option src 'wan'
    option proto 'icmp'
    option src_ip 'fe80::/10'
    list icmp_type '130/0'
    list icmp_type '131/0'
    list icmp_type '132/0'
    list icmp_type '143/0'
    option family 'ipv6'
    option target 'ACCEPT'

config rule
    option name 'Allow-ICMPv6-Input'
    option src 'wan'
    option proto 'icmp'
    list icmp_type 'echo-request'
    list icmp_type 'echo-reply'
    list icmp_type 'destination-unreachable'
    list icmp_type 'packet-too-big'
    list icmp_type 'time-exceeded'
    list icmp_type 'bad-header'
    list icmp_type 'unknown-header-type'
    list icmp_type 'router-solicitation'
    list icmp_type 'neighbour-solicitation'
    list icmp_type 'router-advertisement'
    list icmp_type 'neighbour-advertisement'
    option limit '1000/sec'
    option family 'ipv6'
    option target 'ACCEPT'

config rule
    option name 'Allow-ICMPv6-Forward'
    option src 'wan'
    option dest '*'
    option proto 'icmp'
    list icmp_type 'echo-request'
    list icmp_type 'echo-reply'
    list icmp_type 'destination-unreachable'
    list icmp_type 'packet-too-big'
    list icmp_type 'time-exceeded'
    list icmp_type 'bad-header'
    list icmp_type 'unknown-header-type'
    option limit '1000/sec'
    option family 'ipv6'
    option target 'ACCEPT'

config rule
    option name 'Allow-IPSec-ESP'
    option src 'wan'
    option dest 'lan'
    option proto 'esp'
    option target 'ACCEPT'

config rule
    option name 'Allow-ISAKMP'
    option src 'wan'
    option dest 'lan'
    option dest_port '500'
    option proto 'udp'
    option target 'ACCEPT'

config forwarding
    option src 'wan'
    option dest 'lan'

Dodam, że przez RPI w konfiguracji z postu wyżej mogę sterować echosondą tzn. przełączać jej tryby, włączać światełka ale odczytu temp i głębokości nie ma.

8 (edytowany przez Cezary 2023-03-20 14:03:55)

Odp: raspberry pi pełen dostęp z zerotier

Czyli relayd z openwrt, czyli nie możesz tak zrobić w rasbianie bo relayd to pomysł własny openwrt.

O ile pamiętam to debianych pakietach powinien być parprouted  - on służył do wykonywania podobnych spraw.

EDIT: zobacz jakies sample: https://gist.github.com/glenselle/880ce … 1756e4e4bd

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

9 (edytowany przez palibrzuch 2023-03-22 21:28:48)

Odp: raspberry pi pełen dostęp z zerotier

Ok zobaczę to.
Wydaje mi się też, że w openwrt bez relayd też to działało jak byłem nad wodą. Większość instrukcji zwiększenia zasięgu wskazuje na dodanie tego relayd ale na ddwrt wystarczy połączyć się z echo po wifi i stworzyć virtualną inną sieć i to działa. Działa bo tak robiłem. W openwrt jak pisałem połączenie przez zerotier też działało ale ustawień nie zgrałem a później już nie działało.
Uparłem się na rpi bo zero w 2 jest małe i w łódce pakietem mavlink ogarnąłbym telemetrię po 4g. Wtedy wszystko pięknie by leciało po 4g i zasięg echo i łódki nieograniczony.
Dzięki za wskazówki.


edit

Przy takiej konfiguracji openwrt wszystko działa. Wrzucam echo do wody, uruchamiam router i przez zerotier mam pełen odczyt.
Bez mostu nie chce to działać. Teraz trzeba pomyśleć jak wykorzystać openwrt do tego aby jeszcze telemetrię puścić przez to.

network

config interface 'loopback'
    option device 'lo'
    option proto 'static'
    option ipaddr '127.0.0.1'
    option netmask '255.0.0.0'

config globals 'globals'
    option packet_steering '1'
    option ula_prefix 'fda8:1b2b:9da6::/48'

config device
    option name 'br-lan'
    option type 'bridge'
    list ports 'lan1'
    list ports 'lan2'
    list ports 'lan3'
    list ports 'lan4'

config interface 'lan'
    option device 'br-lan'
    option proto 'static'
    option netmask '255.255.255.0'
    option ip6assign '60'
    option ipaddr '192.168.9.1'
    option gateway '192.168.10.1'
    list dns '8.8.8.8'
    list dns '192.168.10.1'

config interface 'wan'
    option proto 'ncm'
    option device '/dev/cdc-wdm0'
    option mode 'auto'
    option pdptype 'IP'
    option apn 'darmowy'
    option ipv6 'auto'

config interface 'home'
    option proto 'none'
    option device 'fdshdx'

config interface 'dee'
    option proto 'relay'
    list network 'deep'
    list network 'lan'
    option ipaddr '192.168.10.1'

config interface 'deep'
    option proto 'dhcp'

firewall

config defaults
    option input 'ACCEPT'
    option output 'ACCEPT'
    option synflood_protect '1'
    option forward 'ACCEPT'

config zone
    option name 'lan'
    option input 'ACCEPT'
    option output 'ACCEPT'
    option forward 'ACCEPT'
    list network 'lan'
    list network 'dee'
    list network 'home'
    list network 'deep'
    list network 'wan'

wifi

config wifi-device 'radio0'
    option type 'mac80211'
    option path '1e140000.pcie/pci0000:00/0000:00:01.0/0000:02:00.0'
    option band '2g'
    option htmode 'HT20'
    option channel 'auto'
    option country 'CA'
    option cell_density '0'
    option disabled '0'

config wifi-device 'radio1'
    option type 'mac80211'
    option path '1e140000.pcie/pci0000:00/0000:00:00.0/0000:01:00.0'
    option channel '36'
    option band '5g'
    option htmode 'VHT80'
    option country 'PL'
    option cell_density '0'
    option disabled '0'

config wifi-iface 'wifinet1'
    option device 'radio1'
    option mode 'ap'
    option ssid 'Deeper CHIRP+2 C3F9'
    option encryption 'none'
    option network 'lan'

config wifi-iface 'wifinet2'
    option device 'radio0'
    option mode 'sta'
    option network 'deep'
    option ssid 'Deeper CHIRP+2 C3F6'
    option encryption 'none'

Muszę usiąść do tego rpi też bo tu ewidentnie chodzi o mostek. Jak go usuwam to nie działa. Dodaję i wszystko trybi.