Virtual Boxで作ったCentOS 6.10環境でネットに繋がらずハマった話
tl; dr
- 浅い話
- DNS設定を忘れてた
というか minimalでインストールするとGUIもないストイックな環境になるの知らなかった...。
環境
Proxy下のWindows 10PCにVirtual BoxでCentOS 6.10を構築
DNS設定
インストールが終わったので、とりあえず yum updateしようとしたら、ネットに繋がらず
そういえばDNSの設定をしてなかったなと思い、
設定ファイル/etc/sysconfig/network-scripts/ifcfg-eth0
に、
DNSをGoogle Public DNSに設定する、下記一文を追加
DNS1=8.8.8.8
そしてネットワークを再起動
$ /etc/rc.d/init.d/network restart
しかし、これでも繋がらず。。。
Proxy設定
そういや、Proxy設定もしてなかったなと思いだし
.bashrc
ファイルに設定を下記のように追加し
export http_proxy=http://プロキシの設定値 export https_proxy=https://プロキシの設定値
shellに読み込ませる
$ source .bashrc
しかし、これでも繋がらず
試しにgoogle.comに対してpingを叩いていたところ
$ ping google.com
proxyに設定したドメインが名前解決できていないことが解った
なぜ繋がらなかったのか
結構アホなことをしていたことが解った
Proxyを設定したとき
http_proxy=http://なんたら.co.jp/ほげ:port番号
みたいな設定をしてたわけだけど、次のようなことが起きていたんだと思う(思う、というのはネットワークに関してはほぼほぼ知識が無いから、推測や妄想の域を出ない)
yum updateを叩く
リポジトリにアクセスするために外のネットワークに出ていこうとする
外のネットワークに出ていくためにProxyの所にアクセスする
proxyの設定値の、なんたら.co.jp の IPアドレスを得るために 外にあるDNS(8.8.8.8)に接続しに行こうとする
しかし外に出るためにはProxyを通るが、Proxyの場所が解らない。だから名前解決できない
解決した方法
つまり、DNSは社内ネットワーク内のDNSを設定すべきだった
Windows側でコマンドプロンプトでnslookup
を叩いてWindows機が使っているDNSのIPアドレスを取得し、
これを/etc/sysconfig/network-scripts/ifcfg-eth0
のDNS1
の値に設定し、
再起動で、繋がるようになった
$ /etc/rc.d/init.d/network restart
だが、これでもタイムアウトすることが多く、まとも使えないと思ったら、 yumのコンフィグにproxyの設定が必要だったらしい
/etc/yum.conf
に
proxyの設定をする
proxy=http://なんたら.co.jp/ほげ:port番号
これでほとんど問題が起こらなくなった