Host met VM's: Server-A
Heeft een fysieke interface: eno2
Heeft een virtuele bridge interface: br0 IP 85.17.1.1 + 10.0.0.1
VM op Server-A: VPN
Heeft een fysieke interface: enp1s0 IP 85.17.1.10 + 10.0.0.10
VM op Server-A: docker
Heeft een fysieke interface: enp1s0 10.0.0.200
Thuis heb ik een router: EdgeRouter
Heeft een lokaal netwerk: 192.168.1.0/24
Heeft een Site-to-Site VPN met VM VPN.
Left: 192.168.1.0/24
Right: 10.0.0.0/24
Vanuit huis kan ik dus pingen naar 10.0.0.1 en naar 10.0.0.10, maar pingen naar 10.0.0.200 werkt niet.
Bij een ping vanuit een client thuis naar Server-A/10.0.0.1 moet dit de route zijn:
Client thuis (192.168.1.40) -> EdgeRouter (192.168.1.1) -> VM VPN (10.0.0.10) -> Server-A (10.0.0.1).
Op Server-A heb ik een route:
192.168.1.0/24 via 10.0.0.10
Terugverkeer is dus:
Server-A (10.0.0.1) -> VM VPN (10.0.0.10) -> EdgeRouter (192.168.1.1) -> Client thuis (192.168.1.40)
Waarom werkt het pingen naar 10.0.0.200 niet?
Een tcpdump (tcpdump -i any icmp -nn) op VM VPN laat zien dat het verkeer op de VPN server aankomt (inkomend verkeer is dus te zien, maar uitgaand niet, hier lijkt het packet dus kwijt te geraken).
Een tcpdump op de docker VM laat ook zien dat het verkeer aankomt en er gaat zelfs verkeer terug.
De docker VM heeft een default route naar 10.0.0.1 (Server-A). Met tcpdump zie je dat het verkeer hier ook gewoon langsgaat (zowel heen als terug).
De route wat afgelegd wordt is dus als het goed is:
Client thuis (192.168.1.40) -> EdgeRouter (192.168.1.1) -> VM VPN (10.0.0.10) -> VM docker (10.0.0.200).
Terugverkeer zou dan moeten zijn:
VM docker (10.0.0.200) -> Server-A (10.0.0.1) -> VM VPN (10.0.0.10) -> EdgeRouter (192.168.1.1) -> Client thuis (192.168.1.40)
Maar het houd dus op bij VM VPN (10.0.0.10). Deze krijgt het verkeer doorgestuurd vanuit Server-A maar lijkt er niks mee te doen.
Heeft een fysieke interface: eno2
Heeft een virtuele bridge interface: br0 IP 85.17.1.1 + 10.0.0.1
VM op Server-A: VPN
Heeft een fysieke interface: enp1s0 IP 85.17.1.10 + 10.0.0.10
VM op Server-A: docker
Heeft een fysieke interface: enp1s0 10.0.0.200
Thuis heb ik een router: EdgeRouter
Heeft een lokaal netwerk: 192.168.1.0/24
Heeft een Site-to-Site VPN met VM VPN.
Left: 192.168.1.0/24
Right: 10.0.0.0/24
Vanuit huis kan ik dus pingen naar 10.0.0.1 en naar 10.0.0.10, maar pingen naar 10.0.0.200 werkt niet.
Bij een ping vanuit een client thuis naar Server-A/10.0.0.1 moet dit de route zijn:
Client thuis (192.168.1.40) -> EdgeRouter (192.168.1.1) -> VM VPN (10.0.0.10) -> Server-A (10.0.0.1).
Op Server-A heb ik een route:
192.168.1.0/24 via 10.0.0.10
Terugverkeer is dus:
Server-A (10.0.0.1) -> VM VPN (10.0.0.10) -> EdgeRouter (192.168.1.1) -> Client thuis (192.168.1.40)
Waarom werkt het pingen naar 10.0.0.200 niet?
Een tcpdump (tcpdump -i any icmp -nn) op VM VPN laat zien dat het verkeer op de VPN server aankomt (inkomend verkeer is dus te zien, maar uitgaand niet, hier lijkt het packet dus kwijt te geraken).
Een tcpdump op de docker VM laat ook zien dat het verkeer aankomt en er gaat zelfs verkeer terug.
De docker VM heeft een default route naar 10.0.0.1 (Server-A). Met tcpdump zie je dat het verkeer hier ook gewoon langsgaat (zowel heen als terug).
De route wat afgelegd wordt is dus als het goed is:
Client thuis (192.168.1.40) -> EdgeRouter (192.168.1.1) -> VM VPN (10.0.0.10) -> VM docker (10.0.0.200).
Terugverkeer zou dan moeten zijn:
VM docker (10.0.0.200) -> Server-A (10.0.0.1) -> VM VPN (10.0.0.10) -> EdgeRouter (192.168.1.1) -> Client thuis (192.168.1.40)
Maar het houd dus op bij VM VPN (10.0.0.10). Deze krijgt het verkeer doorgestuurd vanuit Server-A maar lijkt er niks mee te doen.
EU DNS: 86.54.11.100