You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Linux applications do not have their network connections routed in the same way as Windows applications. This causes Linux applications to fail to connect to the Internet when some third-party VPN clients are required to reach the open Internet.
Steps to reproduce:
Set up a Linux server with two Ethernet ports. Configure one Ethernet port to connect to the Internet, and the second to provide a separate LAN without Internet access.
Install and configure OpenVPN as a server on this Linux server. Have it listen on the LAN-only Ethernet port.
Use iptables to route/NAT the subnet OpenVPN uses on it's tun interface through the first Ethernet port so that other machines connected to the second Ethernet port's network segment can reach the Internet if and only if they use a VPN connection to the OpenVPN server.
Connect a Windows machine to the LAN of the Linux server's second Ethernet port.
Verify that it is not possible to browse the web using Microsoft Edge or Google Chrome, or download from the Windows Store.
Install the official OpenVPN for Windows client and install a client configuration for it to connect to the OpenVPN server previously set up. Connect to the OpenVPN server using the client on the Windows machine.
Verify that web browsing is now possible with Edge or Chrome, and that the Windows Store works.
Start a bash session on the Windows machine using WSL and attempt to access the Internet using Linux programs in that session, e.g. attempting to download a file with wget. Observe that while all of the Windows software is properly obeying the Windows routing tables and being routed through the virtual Ethernet interface of OpenVPN, the Linux software instead has it's connections routed directly through the physical Ethernet interface (which has no Internet access in this case), and thus will summarily fail without exception.
The text was updated successfully, but these errors were encountered:
I'm currently using OpenVPN for Windows. I'm not experiencing any routing issues within WSL.
@segin -- could you elaborate on how you know that the reason that your connections are not going through is because of the routing table in particular?
Is it possible that your problem is not with the routing table but with the domain-name resolution? Either way will cause connections to fail with the exact symptoms that your description above lists. If so, could this be the same as #416 ?
@aseering -- I believe you might be correct. I double-checked and the autogenerated /etc/resolv.conf in WSL places the "naked" connection's DNS server over that of the OpenVPN connection, which automatically resolves all hostnames to the outside Internet to the local server which runs the OpenVPN server.
I can temporarily work around this by manually editing out those lines from /etc/resolv.conf, but this file will be regenerated to the automatically-generated version at most 10 minutes thereafter.
I will agree that, in this case, this is indeed a duplicate of #416 and I apologise to the Bash on Windows team for having submitted an extraneous bug report.
A possible solution is to allow users to disable automatic /etc/resolv.conf generation.
Linux applications do not have their network connections routed in the same way as Windows applications. This causes Linux applications to fail to connect to the Internet when some third-party VPN clients are required to reach the open Internet.
Steps to reproduce:
iptables
to route/NAT the subnet OpenVPN uses on it'stun
interface through the first Ethernet port so that other machines connected to the second Ethernet port's network segment can reach the Internet if and only if they use a VPN connection to the OpenVPN server.bash
session on the Windows machine using WSL and attempt to access the Internet using Linux programs in that session, e.g. attempting to download a file withwget
. Observe that while all of the Windows software is properly obeying the Windows routing tables and being routed through the virtual Ethernet interface of OpenVPN, the Linux software instead has it's connections routed directly through the physical Ethernet interface (which has no Internet access in this case), and thus will summarily fail without exception.The text was updated successfully, but these errors were encountered: