私は開発目的でWindowsを使用しており、自分のマシンに設定されているVPNを使用して会社のリソースにアクセスしています。主に会社のプライベートgitリポジトリへのアクセスに使用します。
最近、Windows上のUbuntuでBashを開発目的で使用し始め、リポジトリへのアクセスに問題が発生しています。
たとえば、VPNに接続していて、WindowsでGit Bashを使用してリポジトリのクローンを作成すると、問題なく動作します。しかし、WindowsのUbuntuのBashでgitを使用すると、エラーが出力されます。
fatal: unable to access 'https://link.to.the.repository.net/Project/Repository/': Could not resolve Host: link.to.the.repository.net
Windows上のUbuntuのBashがそのようなリソースにアクセスできるようにする方法はありますか?
自動化された手順: https://Gist.github.com/matthiassb/9c8162d2564777a70e3ae3cbee7d2e95
最初にPowerShellで実行します。
Get-DnsClientServerAddress -AddressFamily IPv4 | Select-Object -ExpandPropert ServerAddresses
次に、ubuntu
またはbash
コマンドのいずれかを使用して、bashをWindowsで実行します(インストールによって異なります)。
/etc/resolv.conf
とすべてを置き換えますnameserver {ip}
は、上位のものによって生成されたものです。
これでインターネットとイントラネットが復活したはずです。最初の行を削除して永続化しますが、ネットワークを変更すると更新されなくなります。 (多分最初にバックアップしますか?)
私にとって、問題は私のVPNに内部ネームサーバーがあったことでした。これらのネームサーバーはWindowsマシンに存在していましたが、Linuxサブシステムには含まれていませんでした。修正する手順:
ホスト名を解決するネームサーバーがないようです。 Ubuntu bash内で、/ etc/resolv.confファイルを編集して次の内容を含めます。
nameserver X.Y.Z.W
IPv4を使用していることを前提としています。上記のアドレスは一例です。 ISPが使用している実際のDNSアドレスを確認するか、パブリックDNSサーバーを選択する必要があります。必要に応じて、複数のネームサーバーを使用できます。