使用VPN在Windows上的Bash(Ubuntu)中DNS无法正常工作


10

我刚刚开始测试“ Windows上的Ubuntu上的Bash”,我喜欢它!

只是,问题在于我需要使用VPN才能访问我们的后端服务器和开发人员服务器。而且,当尝试(例如)使用Windows Bash shell SSH到我们的开发服务器时,它无法解析主机名。

请注意,我可以使用ip地址来ssh,而且这些主机名在Windows中的其他地方也可以正常工作。像腻子,常规cmd,文件资源管理器等。

我也检查了/etc/resolv.conf,可以看到我们列出的工作名称服务器。

从这里开始,我的网络技能尤其是Linux不足,所以请帮助:D


我刚刚遇到了同样的问题。您是否设法解决了其他问题?

Answers:


1

这是一个路由问题,而不是WSL的错误。您的本地子网很可能与远程子网相同。我假设您使用桥接VPN。

我遇到了同样的问题。我使用OpenVPN连接办公室(远程)和家(本地)。这两个子网均为192.168.1.0,这是在许多路由器上最常见的子网。

我最终通过以下配置解决了该问题。我的目标是使用tun来减少开销,并且仅重定向目标位置在办公室的流量。但是,这也适用于桥接VPN。

;make the dhcp-option works on Windows 10.
script-security 2
;do not accept any pushed route command.
route-nopull
;make sure the connection still go through my home router. This line may not be necessary. You can try to remove this line and see it the VPN works.
route 192.168.1.1 255.255.255.0 net_gateway
;redirect the traffic where the destination is within the 192.168.1.0 subnet to OpenVPN gateway.
route 192.168.1.128 255.255.255.128
route 192.168.1.0 255.255.255.128
;set the DNS server which is in the office
dhcp-option DNS 192.168.1.254
dhcp-option DNS 192.168.1.253
dhcp-option DOMAIN my.company.domain

0

这不能解决DNS无法正常工作的问题,但是这是一种变通方法,使其看起来好像在正常工作。

您可以编辑主机文件(在/ etc / hosts中),并为要使用的主机名添加一个条目。

添加一个条目,该条目的IP地址后跟一个空格和主机名。

123.456.1.1 target.host.net

注意,您将需要sudo编辑命令。sudo vi /etc/hosts

对我而言,整个bash shell会话中的编辑过程一直存在。我假设这是Microsoft将来有望解决的错误。现在,我只是使用此解决方法。


-1

我也有同样的问题。我只用一个名称服务器和一个搜索域(用于VPN网络)临时编辑了/etc/resolv.conf,它解析了该网络上的主机名。此更改不是永久的,因此在Windows上的Ubuntu上退出并重新启动Bash会将/etc/resolv.conf恢复为默认设置。


1
“但真的很想知道如何在Windows的Ubuntu上为Bash正确设置网络接口,以便在Windows中建立VPN连接会自动配置DNS。” -您应该从答案中删除此评论。
拉姆猎犬,
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.