カテゴリ:13.実際にやってみる > 13.7 仮想環境

virtualboxにて・・・

・仮想ではないローカルの環境に戻る
 右側のctrl
 ※画面右下にも「Right Control」と表示されている。右のコントロールという意味。

・ネットワークの設定
「デバイス」「ネットワーク」「ネットワーク設定」から、アダプタの割り当てを「ブリッジアダプター」にしておくといいだろう。物理PCと同じセグメントのIPアドレスが割り当てられ、同一LANとして通信ができる。
「NAT」にすると、違うIPアドレスが割り当てられる。

■VirtualBoxでエラーが出た
VirtualBoxをインストールするときに、ちょっとよく覚えていないが64bit版をインストールでエラーが出た。
そこで、BIOSの設定を変えた。(このあたりはうろ覚え)
Security>Virtualization>Inter VirtualizationをEnableにした。
本件と一緒かはわからないが、以下のサイトに画面入りで丁寧に解説されている。
https://qiita.com/yamasaki1ma/items/141f12d52ef38f3f3f85

①VMware Playerのダウンロード
http://www.vmware.com/download/player/
※ユーザ登録が必要
②Browser Applianceのダウンロード と展開
③VMwareのインストール
④VMwareの起動
⑤ファイルを指定して、Browser Applianceを開く
root権限が必要な場合は sudo -s
password:vmware

◆別のOSをCDからインストールする場合には、以下の設定になっているかを確認
ide1:0.fileName = "auto detect"
ide1:0.deviceType = "cdrom-raw"

■VMware Playerでのネットワークの設定
実PCのIPアドレスが192.168.0.1 で、仮想OS(ゲストOS)のIPアドレスを192.168.0.2などとして、それぞれが独立したコンピュータとして動作させたいことが多いと思う。
その場合、VMの「仮想マシンの設定」で「ネットワークアダプタ」を「ブリッジ」にする。
DHCPサーバで自動取得でも動作するので、実PCとゲストOSで、それぞれ違うIPが割り振られるだろう。
ネットワーク上のPCからそれぞれにアクセスすることも可能。
また、無線ネットワークでもできるよ。

■VMwarePlyaer ブリッジモードのNICが認識しないとき
・「仮想マシンの設定」「ハードウェア」「ネットワークアダプタ」で「ブリッジ」のところの「アダプタの設定」を押す。有線と無線の両方が有効になっていると思うが、使う方だけチェックをいれよう。
・NWの再起動
 systemctl network restart

■Linuxのインストールに関して
----VMwarePlayer
VMwarePlayerにLinux(CentOS7)をインストールする
・VMwarePlayerを開く(今回はVMware Workstation 15 Player)
・「新規仮想マシンの作成」
・新規仮想マシン作成ウィザード画面になる
 「インストーラディスクイメージファイル」を選択し、CentOS7が入っているISOイメージを指定すると、簡易インストールができるかもしれない。
 簡易インストールが嫌だったので、「後でOSをインストール」を選択して進めた。
・ゲストOSに「Linux」、バージョンを「CentOS7 64ビット」を選択
・仮想マシンの名前と、場所を決める。私はDドライブに入れることにした。
・ディスク容量の指定は、デフォルトにした。20Gで、複数のファイルに分割、である
・ハードウェアのカスタマイズで、私は以下を変更
 ・メモリを4Gに
 ・新規CD/DVDに、「ISOイメージファイルを使用する」として、CentOS7が入ったISOイメージを指定
 ・ネットワークアダプタを「ブリッジ」に
設定は以上である。「完了」を押するとホームに戻る。
「仮想マシンの再生」を押してインストールの開始
・インストール画面が起動する
 「CentOS7」を選択して「Enter」
・ソフトウェアの選択
 「GNOME Desktop」でGUI画面にする。選択したら左上の「完了」を押す。
・設定が終わったら、「インストールの開始」
・rootのパスワードを設定しましょう。PWが短すぎたりする場合には、完了を2回押す必要があります。
インストールが完了して初期設定
・タイムゾーンは「tokyo」と入力しよう
※VMwaretoolsは入っている気がする。

■インストール後
(1)NWの設定
ネットワークアダプタは「ブリッジ」で「物理ネットワーク接続の状態を複製」にチェックを入れない。
→ifconfigでIPが取得できるかを確認。
うまくいかない場合、アダプタを切断して再度接続したり、
systemctl で再起動したり、
nmtuiでアクティベートしたりすると、有効になるかもしれない。

(2)その後の初期設定
①初期設定としてupdateしておこう
# yum update
・追加のパッケージでEPELも入れておくといいかも
# yum install epel-release
http://sm.seeeko.com/archives/15877470.html
②検証であれば、SElinuxは無効にしておいたら?
http://sm.seeeko.com/archives/15877462.html
③ついでにFWも無効に

■VMwareのその他メモ
・Player複数起動→単純に2つ起動する
・仮想環境内のコピーを、仮想環境の外でも利用
→たぶん、VmwareToolsを入れればできると思う
・画面解像度の設定
→こちらも、VmwareToolsを入れればできると思う

なかか本格的なスイッチを買うのは面倒なので、簡易に仮想環境でスイッチの設定を試してみる。


1.概要や参考となるリンク
以下で概ねできるだろう。
https://qiita.com/ryuta-ito/items/17ed3642d2264451ed07

VLAN、STPとか、ARP,LAGができたら、学習としては十分な気がする。→VLANとSTPはできそう。

PCを作るのは大変なので、namespaceを使う
https://mmash-h.hatenablog.com/entry/2019/10/19/220018

以下、netnsを試すサイト
http://blog.serverworks.co.jp/tech/2019/08/05/post-70460/

2.単純な以下の構成でやってみる。
以下のような、とてもシンプルな構成で試す


vswitcn
(1)PCとLANケーブルの設定
①namespaceとしてpcAを作る
root#ip netns add pcA
root#ip netns add pcB

・確認
root#ip netns show  又はlist

・削除する場合
ip netns del pcB

※ip -all netns del で、全消しだと思う。

②LANケーブルを接続

※その前に、ip linkで接続状況を見ておこう。
AWSの物理的なIF状況を見るip aと同じで、ループバックアドレス(lo)と、LAN(eth0)があるはずだ。ここから、linkを増やしていきます。

pcAとSW1の接続をリンク(ケーブル)を作る。まだSWを作っていないが、pcAのethA(新規作成)とSW1のSW1-p1(新規作成)を接続する。
# ip link add ethA type veth peer name SW1-p1
# ip link add ethB type veth peer name SW1-p2

→すると、ip link コマンドで見ると、リンクが表示される。以下のように、なっているだろう。状態としては、state DOWN になっていると思う。

7: SW1-p1@ethA:
8: ethA@SW1-p1:
9: SW1-p2@ethB:
10: ethB@SW1-p2:

③pcAのIFであるethAをリンクアップさせる。また、IPアドレスとして10.1.2.100を付与する。※サブネットも忘れずにね。
# ip link set ethA netns pcA up
# ip netns exec pcA ip addr add 10.1.2.100/24 dev ethA
・pcBは10.1.2.101
# ip link set ethB netns pcB up
# ip netns exec pcB ip addr add 10.1.2.101/24 dev ethB

→ip link で見ると、7と8のIFが一つになっていて、しかもethAがif8に変わっている。
7: SW1-p1@if8:
9: SW1-p2@if10:

※IFの状態確認
# ip netns exec pcA ip a

→ethA@if7となっている。この辺は理屈がよくわかっていない
ethBも、ethB@if9となっている。

(2)スイッチの作成:Open vSwith
①スイッチの作成
★その前に、Open vSwithのインストールが必要。これがまあまあ面倒だ。

また、ovs-vsctlが入っているディレクトリに移動し、ovs-ctlをstartする
cd /usr/share/openvswitch/scripts/ovs-ctl
ovs-ctl start

ovs-vsctl add-br SW1
ovs-vsctl add-br SW2

②スイッチのポートを作成してVLANを割当て
# ovs-vsctl add-port SW1 SW1-p1 tag=10
# ovs-vsctl add-port SW1 SW1-p2 tag=10

★# ip link でみると、IFがダウンしている
以下のように、一つ一つUPさせる
# ip link set SW1-p1 up
# ip link set SW1-p2 up

(3)動作確認。Pingを打つ
# ip netns exec pcB ping 10.1.2.100
正常に応答があれば、通信が成功

(4)その他
ARPを見たい
# ip netns exec pcB arp -na
? (10.1.2.100) at 1e:74:af:b3:91:46 [ether] on ethB
※出てこなかったら、双方向で通信すると見えると思う。

・SWの削除
ovs-vsctl del-br SW3

(5)SWの設定
#ovs-vsctl show
→Ciscoのshow runみたいなもの

(6)状態確認
①SWのリストを確認
# ovs-vsctl list-br
SW1
SW2

②SW1のポートを確認
# ovs-vsctl list-ports SW1

③SW1のインターフェースリストを確認
# ovs-ofctl show SW1


3.SWを2台にしてタグVLANで接続する
trunk
ip netns add pc1
ip netns add pc2
ip netns add pc3
ip netns add pc4
ip netns add pc5

ip link add e1 type veth peer name p11
ip link add e2 type veth peer name p12
ip link add e3 type veth peer name p13
ip link add e4 type veth peer name p21
ip link add e5 type veth peer name p22
ip link add p14 type veth peer name p23

ip link set e1 netns pc1 up
ip netns exec pc1 ip addr add 10.1.10.1/24 dev e1

ip link set e2 netns pc2 up
ip netns exec pc2 ip addr add 10.1.10.2/24 dev e2

ip link set e3 netns pc3 up
ip netns exec pc3 ip addr add 10.1.20.3/24 dev e3

ip link set e4 netns pc4 up
ip netns exec pc4 ip addr add 10.1.10.4/24 dev e4

ip link set e5 netns pc5 up
ip netns exec pc5 ip addr add 10.1.20.5/24 dev e5

ovs-vsctl add-br SW1
ovs-vsctl add-br SW2

ovs-vsctl add-port SW1 p11 tag=10
ovs-vsctl add-port SW1 p12 tag=10
ovs-vsctl add-port SW1 p13 tag=20
ovs-vsctl add-port SW2 p21 tag=10
ovs-vsctl add-port SW2 p22 tag=20
ovs-vsctl add-port SW1 p14 trunk=10,20
ovs-vsctl add-port SW2 p23 trunk=10,20

ip link set p11 up
ip link set p12 up
ip link set p13 up
ip link set p21 up
ip link set p22 up

ip link set p14 up
ip link set p23 up

ip netns exec pc1 ping 10.1.10.2
※pc1からpc2へのpingが通る
# ip netns exec pc1 ping 10.1.10.4
※SWを超えたpc4にも届く

4.STP
さらに、SW3を足し、PC6も追加。VALN10をループ状態にした。

ip link add p15 type veth peer name p31
ip link add p24 type veth peer name p32
ovs-vsctl add-br SW3
ovs-vsctl add-port SW1 p15 tag=10
ovs-vsctl add-port SW2 p24 tag=10
ovs-vsctl add-port SW3 p31 tag=10
ovs-vsctl add-port SW3 p32 tag=10
ip link set p14 up
ip link set p24 up
ip link set p31 up
ip link set p32 up

ip netns add pc6
ip link add e6 type veth peer name p33
ip link set e6 netns pc6 up
ip netns exec pc6 ip addr add 10.1.10.6/24 dev e6
ovs-vsctl add-port SW3 p33 tag=10
ip link set p33 up

pingが疎通するし、以下でIFをダウンさせたりする。STPが有効になっているはず。
ip link set p31 down

だた、以下のコマンドではSTPの状態が見えなかった。要調査である。
ovs-vsctl -- --columns=name,status list port

↑このページのトップヘ