OpenVPN/TAP Bridge

Ok just checked that log file. So do I read it correctly both your network as well as your parents is using 192.168.0.0/24? If that is the case you would need to do NAT as routing would not work.

Also in the sources.xml I only see smb:\\PLEX you would need to use IP Addresses otherwise you also would need to ensure proper DNS across the two networks (or use the TAP approach).

Currently all these devices are on the same network and subnetwork.

For testing I am creating a hotspot on my phone and tethering my laptop and then establishing the OVPN connection to the Pi.

Well that is what you need to do, having two subnets for test. Might even can use a second router if you have.

kesh6970:

I don’t know what the IP range will be at my new place, but I can configure this to my liking so that’s not a huge concern

Well then for the testing let’s assume the 192.168.0.1-100 to be your future server side LAN. And your Laptop hotspot reprensets your parents LAN (you would need to swap when you move out.

+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

I have tried editing the sources.xml and I’m still unable to access my SMB share (even by remapping the network drive) - I receive a Windows error that 192.168.0.53 is unreachable

Ok, now that I understand the setup of the testing scenario let’s look at the details.
When connected to the Hotspot and the openvpn tunnel established can you provide from the Pi and from the Openvpn server
ip addr
ip ro

Just to confirm, I have 1 Pi running. The Pi is the OpenVPN Server. I have a connection established currently between the Pi Server and a hotspotted laptop.

Pi Server Outputs:

ip addr:

1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default 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: <NO-CARRIER,BROADCAST,MULTICAST,DYNAMIC,UP> mtu 1500 qdisc pfifo_fast state DOWN group default qlen 1000
link/ether b8:27:eb:86:93:58 brd ff:ff:ff:ff:ff:ff
4: wlan0: <BROADCAST,MULTICAST,DYNAMIC,UP,LOWER_UP> mtu 1500 qdisc mq state UP group default qlen 1000
link/ether d0:37:45:80:06:54 brd ff:ff:ff:ff:ff:ff
inet 192.168.0.45/24 brd 192.168.0.255 scope global wlan0
valid_lft forever preferred_lft forever
5: tun0: <POINTOPOINT,MULTICAST,NOARP,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UNKNOWN group default qlen 100
link/none
inet 10.8.0.1 peer 10.8.0.2/32 scope global tun0
valid_lft forever preferred_lft forever
inet6 fe80::6cc3:6886:b7a4:352c/64 scope link flags 800
valid_lft forever preferred_lft forever

ip ro:

default via 192.168.0.1 dev wlan0
10.8.0.0/24 via 10.8.0.2 dev tun0
10.8.0.2 dev tun0 proto kernel scope link src 10.8.0.1
192.168.0.0/24 dev wlan0 proto kernel scope link src 192.168.0.45
192.168.0.1 dev wlan0 scope link

…and from laptop:

Unknown adapter Local Area Connection:

Connection-specific DNS Suffix . :
Link-local IPv6 Address . . . . . : fe80::94b5:df76:8a7b:d677%35
IPv4 Address. . . . . . . . . . . : 10.8.0.10
Subnet Mask . . . . . . . . . . . : 255.255.255.252
Default Gateway . . . . . . . . . :

Wireless LAN adapter Wi-Fi:

Connection-specific DNS Suffix . :
Link-local IPv6 Address . . . . . : fe80::5ce3:555:2ae0:e9%8
IPv4 Address. . . . . . . . . . . : 172.20.10.9
Subnet Mask . . . . . . . . . . . : 255.255.255.240
Default Gateway . . . . . . . . . : 172.20.10.1

Ok, thanks for clarification. So what are you then testing? Reaching what from where?
What is the output of route PRINT on your Laptop?

Also in this testing scenario for the server config you would need to use:
push "route 192.168.0.0 255.255.255.0 vpn_gateway"
route 172.20.10.0 255.255.255.0

My testing setup is a laptop connected to a wifi hotspot created by a mobile phone (currently the entire architecture is in 1 room but the use-case is assuming 10K miles between the laptop and the Pi).

Also a note, the laptop is used for testing purposes, long-term I intend the OpenVPN client application to be installed on my main PC (also a Window 10 device).

Route PRINT output on W10 testing laptop:

===========================================================================
Interface List
3…5e ec 4c 85 bd a7 …VPN Client Adapter - VPN
6…00 23 18 ce 9b 80 …Intel® 82577LC Gigabit Network Connection
35…00 ff a4 bf d0 f1 …TAP-Windows Adapter V9
8…00 23 14 a0 a8 2c …Intel® Centrino® Advanced-N 6200 AGN
9…00 22 58 d4 75 a0 …Bluetooth Device (Personal Area Network)
1…Software Loopback Interface 1

IPv4 Route Table

Active Routes:
Network Destination Netmask Gateway Interface Metric
0.0.0.0 0.0.0.0 172.20.10.1 172.20.10.9 50
0.0.0.0 128.0.0.0 10.8.0.9 10.8.0.10 25
10.8.0.0 255.255.255.0 10.8.0.9 10.8.0.10 25
10.8.0.1 255.255.255.255 10.8.0.9 10.8.0.10 25
10.8.0.8 255.255.255.252 On-link 10.8.0.10 281
10.8.0.10 255.255.255.255 On-link 10.8.0.10 281
10.8.0.11 255.255.255.255 On-link 10.8.0.10 281
82.11.90.235 255.255.255.255 172.20.10.1 172.20.10.9 50
127.0.0.0 255.0.0.0 On-link 127.0.0.1 331
127.0.0.1 255.255.255.255 On-link 127.0.0.1 331
127.255.255.255 255.255.255.255 On-link 127.0.0.1 331
128.0.0.0 128.0.0.0 10.8.0.9 10.8.0.10 25
172.20.10.0 255.255.255.240 On-link 172.20.10.9 306
172.20.10.9 255.255.255.255 On-link 172.20.10.9 306
172.20.10.15 255.255.255.255 On-link 172.20.10.9 306
192.168.0.0 255.255.255.0 10.8.0.9 10.8.0.10 25
224.0.0.0 240.0.0.0 On-link 127.0.0.1 331
224.0.0.0 240.0.0.0 On-link 172.20.10.9 306
224.0.0.0 240.0.0.0 On-link 10.8.0.10 281
255.255.255.255 255.255.255.255 On-link 127.0.0.1 331
255.255.255.255 255.255.255.255 On-link 172.20.10.9 306
255.255.255.255 255.255.255.255 On-link 10.8.0.10 281

Persistent Routes:
None

IPv6 Route Table

Active Routes:
If Metric Network Destination Gateway
1 331 ::1/128 On-link
8 306 fe80::/64 On-link
35 281 fe80::/64 On-link
8 306 fe80::5ce3:555:2ae0:e9/128
On-link
35 281 fe80::94b5:df76:8a7b:d677/128
On-link
1 331 ff00::/8 On-link
8 306 ff00::/8 On-link
35 281 ff00::/8 On-link

Persistent Routes:
None

Ok that is clear now.

Routing looks nearly good, you would need to change the
route 172.20.10.0 255.255.255.0 in server config
Than basic routing should work.
And you would need to tell me what you want to try from which device to which device.
Because you would then need to add routes to the remote network on those devices

Okay I’ve added the

route 172.20.10.0 255.255.255.0

line into server.conf

After reconnecting show ip ro from server to reconfirm it is correct

ip ro output from Server:

default via 192.168.0.1 dev wlan0
10.8.0.0/24 via 10.8.0.2 dev tun0
10.8.0.2 dev tun0 proto kernel scope link src 10.8.0.1
172.20.10.0/24 via 10.8.0.2 dev tun0
192.168.0.0/24 dev wlan0 proto kernel scope link src 192.168.0.45
192.168.0.1 dev wlan0 scope link

This is with an established connection between Server/Client, Client has address 10.8.0.6

Looks all good.
So from where to where do you want to test now?
Server - Laptop should work right away
Server: ping 172.20.10.9
Laptop: ping 192.168.0.45

For other devices you would need to add route
172.20.10.0/24 via 192.168.0.45 on each of the ones that should reach the remote network.

Right so - Ping tests:

Server > Client = fail (ping 10.8.0.6 and ping 172.20.10.9)
Client > Server = success (ping 192.168.0.45)
Client > Other network hosts (.10, .60, .1) = success

How do I now map the SMB share on the OSMC/OpenVPN Server Pi from the remote Windows 10 VPN Client (Laptop)?

Might be Windows Firewall blocking that. Would need to allow ICMP from 192.168.0.0/24 and 10.8.0.0/24

just in explorer type \\192.168.0.45\ and it should be visible.

How do I now map the SMB share on the OSMC/OpenVPN Server Pi from the remote Windows 10 VPN Client (Laptop)?

just in explorer type \\192.168.0.45\ and it should be visible.

Fantastic, got the SMB directory access on the Remote client. Will investigate Windows firewall

So I guess you understood the concept and know what you would have to adapt for your final setup.

I’m getting used to navigating the network remotely over the VPN connection now, think this may work as a solution for now. I’ve got OSMC updates turned off as this distro is the last that supports my WiFi adapter.

Thank you for your help!