Tech Karte::

できることをひとつずつ。

UbuntuへのGNS3導入~設定および小規模ネットワーク構築~動作・疎通確認

Cisco Certified Network Associate (CCNA®)の勉強に効果的なツール、「GNS3」を導入して勉強をしています。

今回は導入方法・設定と、簡単な小規模ネットワークの構築まで勉強したのでその備忘録として。

導入・設定は以下を参照。
changineer.info

GNS3 | The software that empowers network professionals

GNS3サイトにアクセスして、自分のLinuxディストリビューションに合ったインストール方法で…
自分の場合はVMware PlayerにUbuntu 15.10 64-bitを導入しているので、Ubuntuのコンソール上からインストールを行いました。


GNS3の動作に必要となるIOSはググったり実機から吸い出したり…



設定が済んだところで、本題の小規模ネットワークの構築から動作・疎通確認までのフローへ。

今回はこのようなネットワークの構築を行いました。
(ルータ1と2を逆にしておけばよかったです…)
f:id:k-matsuda0901:20160411094638p:plain

ルータ2(192.168.1.0側)の設定

ルータスロット1にGigabit-Ethernet接続用C7200-IO-GE-E、スロット2にFastEthernet接続用のPA-2FE-TXを設定。

以下内部設定

--GigabitEthernet側--

R2#configure terminal
R2(config)#interface gigabitethernet 0/0
R2(config-if)#ip address 192.168.10.1 255.255.255.0

-FastEthernet側-

R2#configure terminal
R2(config)#interface fastethernet 1/0
R2(config-if)#ip address 192.168.1.254 255.255.255.0
PC1(192.168.1.0側)の設定
PC1>ip 192.168.1.1 192.168.1.254 24

※IPアドレスとデフォルトゲートウェイをサブネットマスク付きで設定。

PC1~R2間に噛ませてあるのはパケットをただ転送するだけのハブ(ばかハブって言うのを初めて知りました…)なので設定はしてません。


ルータ1(192.168.2.0側)の設定

ルータスロット設定はR2と同様にしました。

--GigabitEthernet側--

R1#configure terminal
R1(config)#interface gigabitethernet 0/0
R1(config-if)#ip address 192.168.10.2 255.255.255.0

-FastEthernet側-

R1#configure terminal
R1(config)#interface fastethernet 1/0
R1(config-if)#ip address 192.168.2.254 255.255.255.0
PC2・3(192.168.2.0側)の設定
PC2>ip 192.168.2.1 192.168.2.254 24

PC3>ip 192.168.2.2 192.168.2.254 24
PC4・5(192.168.3.0側)の設定

ここで何を思ったかもう一つ192.168.3.0ネットワークをつくってしまい、あとあと色々と設定することになりました…
CCNAのICND1編しか読んでませんでしたが対応できたし、勉強にもなったので今考えると正解だったかもしれません。

PC4>ip 192.168.3.1 192.168.3.254 24

PC5>ip 192.168.3.2 192.168.3.254 24

ここで設定がこんがらがりそうになったのでCCNAのテキストを読んでいると、トランク(Trunk)リンクの章が。
「これでいいのか?」と思いつつも設定をしてみることに。

R1(192.168.3.0側)設定

R1#configure terminal
R1(config)#interface fastethernet 1/0.1  ←サブインターフェイスの設定へ
R1(config-subif)#encapsulation dot1q 2  ←IEEE 802.1QとVLAN2を指定
R1(config-subif)#ip address 192.168.3.254 255.255.255.0  ←IPアドレスとサブネットマスクを割り当てる


R1側にはスイッチを噛ませてあるのでそっちの設定も必要でした。
GNS3ではスイッチを右クリックするとconfigureができるので、そこから設定を行いました。

192.168.2.0をVLAN1、192.168.3.0をVLAN2に設定し、スイッチ~R1間をトランク接続に設定しました。
(※この設定でいいのかは現状合っているのかは分かりません…)

f:id:k-matsuda0901:20160411110822p:plain


ここまで終わって満足していた俺ですが、いざ疎通確認取ってみるとR1~R2間のPingが通らない…
それもそのはず、ルートが設定されてませんでした。
さすが俺。ド素人。

R2のスタティックルーティング

R2#configure terminal
R2(config)#ip route 192.168.2.0 255.255.255.0 192.168.10.2
R2(config)#ip route 192.168.3.0 255.255.255.0 192.168.10.2

R1のスタティックルーティング

R1#configure terminal
R1(config)#ip route 192.168.1.0 255.255.255.0 192.168.10.1


これでPingしたらなんとか通りました。
が、これでいいのか?修正箇所あるんだろうけど今の知識ではここまでが限界です…

もしこれを見てくれている神がいたら修正箇所のご指摘お待ちしてます…

https://www.instagram.com/p/BDus2i-Els1/
近所の桜が満開だった時に撮りました。

CentOS 7にMySQL5.7を導入

タイトル通りです。以下を参照にとりあえず導入まで。

weblabo.oscasierra.net



CentOS7にはmariaDBというMySQL互換のデータベースが標準インストールされているので、このままMySQLを導入すると競合を起こしてしまう。
まずはこのmariaDBを削除するために以下のコマンドを入力。

$ sudo yum remove mariadb-libs

すると

読み込んだプラグイン:fastestmirror, langpacks
依存性の解決をしています
--> トランザクションの確認を実行しています。
---> パッケージ mariadb-libs.x86_64 1:5.5.44-2.el7.centos を 削除
--> 依存性の処理をしています: libmysqlclient.so.18()(64bit) のパッケージ: 2:postfix-2.10.1-6.el7.x86_64
--> 依存性の処理をしています: libmysqlclient.so.18(libmysqlclient_18)(64bit) のパッケージ: 2:postfix-2.10.1-6.el7.x86_64
--> トランザクションの確認を実行しています。
---> パッケージ postfix.x86_64 2:2.10.1-6.el7 を 削除
--> 依存性解決を終了しました。
依存性を解決しました
==============================================================================================
 Package              アーキテクチャー
                                     バージョン                       リポジトリー       容量
==============================================================================================
削除中:
 mariadb-libs         x86_64         1:5.5.44-2.el7.centos            @anaconda         4.4 M
依存性関連での削除をします:
 postfix              x86_64         2:2.10.1-6.el7                   @anaconda          12 M
トランザクションの要約
==============================================================================================
削除  1 パッケージ (+1 個の依存関係のパッケージ)
インストール容量: 17 M
上記の処理を行います。よろしいでしょうか? [y/N]y      ←yumオプション -yで省略可能
Downloading packages:
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
  削除中                  : 2:postfix-2.10.1-6.el7.x86_64                                 1/2 
  削除中                  : 1:mariadb-libs-5.5.44-2.el7.centos.x86_64                     2/2 
  検証中                  : 1:mariadb-libs-5.5.44-2.el7.centos.x86_64                     1/2 
  検証中                  : 2:postfix-2.10.1-6.el7.x86_64                                 2/2 
削除しました:
  mariadb-libs.x86_64 1:5.5.44-2.el7.centos                                                   
依存性の削除をしました:
  postfix.x86_64 2:2.10.1-6.el7                                                               
完了しました!

また、以前のバージョンのMySQLデータを削除する
(rm -rfコマンド見ると動悸がしますが)

$ rm -rf /var/lib/mysql

続いてMySQLyumリポジトリを追加

$ sudo yum localinstall http://dev.mysql.com/get/mysql57-community-release-el7-7.noarch.rpm
読み込んだプラグイン:fastestmirror, langpacks
mysql57-community-release-el7-7.noarch.rpm                             | 8.8 kB  00:00:00     
/var/tmp/yum-root-n2eiZq/mysql57-community-release-el7-7.noarch.rpm を調べています: mysql57-community-release-el7-7.noarch
/var/tmp/yum-root-n2eiZq/mysql57-community-release-el7-7.noarch.rpm をインストール済みとして設定しています
依存性の解決をしています
--> トランザクションの確認を実行しています。
---> パッケージ mysql57-community-release.noarch-el7-7 を インストール
--> 依存性解決を終了しました。
依存性を解決しました
==============================================================================================
 Package                     アーキテクチャー
                                      バージョン
                                              リポジトリー                               容量
==============================================================================================
インストール中:
 [1mmysql57-community-release(B[m   noarch   el7-7   /mysql57-community-release-el7-7.noarch   7.8 k
トランザクションの要約
==============================================================================================
インストール  1 パッケージ
合計容量: 7.8 k
インストール容量: 7.8 k
Is this ok [y/d/N]: y
Downloading packages:
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
  インストール中          : mysql57-community-release-el7 [                             ] 1/1
  インストール中          : mysql57-community-release-el7-7.noarch                        1/1 
  検証中                  : mysql57-community-release-el7-7.noarch                        1/1 
インストール:
  mysql57-community-release.noarch.el7-7                                                    
完了しました!

MySQL本体のインストール

$ sudo yum install mysql-community-server
読み込んだプラグイン:fastestmirror, langpacks
mysql-connectors-community                                             | 2.5 kB  00:00:00     
mysql-tools-community                                                  | 2.5 kB  00:00:00     
mysql57-community                                                      | 2.5 kB  00:00:00     

(1/3): mysql-connectors-community/x86_64/primary_db                    | 8.6 kB  00:00:00     
(2/3): mysql-tools-community/x86_64/primary_db                         |  25 kB  00:00:00     
(3/3): mysql57-community/x86_64/primary_db                             |  38 kB  00:00:00     
Loading mirror speeds from cached hostfile
 * base: ftp.nara.wide.ad.jp
 * extras: ftp.nara.wide.ad.jp
 * updates: ftp.nara.wide.ad.jp
依存性の解決をしています
--> トランザクションの確認を実行しています。
---> パッケージ mysql-community-server.x86_64 0:5.7.11-1.el7 を インストール
--> 依存性の処理をしています: mysql-community-common(x86-64) = 5.7.11-1.el7 のパッケージ: mysql-community-server-5.7.11-1.el7.x86_64
--> 依存性の処理をしています: mysql-community-client(x86-64) = 5.7.11-1.el7 のパッケージ: mysql-community-server-5.7.11-1.el7.x86_64
--> トランザクションの確認を実行しています。
---> パッケージ mysql-community-client.x86_64 0:5.7.11-1.el7 を インストール
--> 依存性の処理をしています: mysql-community-libs(x86-64) = 5.7.11-1.el7 のパッケージ: mysql-community-client-5.7.11-1.el7.x86_64
---> パッケージ mysql-community-common.x86_64 0:5.7.11-1.el7 を インストール
--> トランザクションの確認を実行しています。
---> パッケージ mysql-community-libs.x86_64 0:5.7.11-1.el7 を インストール
--> 依存性解決を終了しました。

依存性を解決しました
==============================================================================================
 Package                      アーキテクチャー
                                           バージョン           リポジトリー             容量
==============================================================================================
インストール中:
 mysql-community-server       x86_64       5.7.11-1.el7         mysql57-community       143 M
依存性関連でのインストールをします:
 mysql-community-client       x86_64       5.7.11-1.el7         mysql57-community        25 M
 mysql-community-common       x86_64       5.7.11-1.el7         mysql57-community       270 k
 mysql-community-libs         x86_64       5.7.11-1.el7         mysql57-community       2.2 M
トランザクションの要約
==============================================================================================
インストール  1 パッケージ (+3 個の依存関係のパッケージ)

総ダウンロード容量: 170 M
インストール容量: 777 M
Is this ok [y/d/N]: y

ここで

Downloading packages:
警告: /var/cache/yum/x86_64/7/mysql57-community/packages/mysql-community-common-5.7.11-1.el7.x86_64.rpm: ヘッダー V3 DSA/SHA1 Signature、鍵 ID ********: NOKEY
mysql-community-common-5.7.11-1.el7.x86_64.rpm の公開鍵がインストールされていません

(1/4): mysql-community-common-5.7.11-1.el7.x86_64.rpm                  | 270 kB  00:00:00     
  :                :                                                       :        : 
(4/4): mysql-community-server-5.7.11-1.el7.x86_64.rpm                  | 143 MB  00:00:24     
----------------------------------------------------------------------------------------------
合計                                                          6.7 MB/s | 170 MB  00:00:25     
file:///etc/pki/rpm-gpg/RPM-GPG-KEY-mysql から鍵を取得中です。

Importing GPG key 0x********:                                    
 Userid     : "MySQL Release Engineering <mysql-build@oss.oracle.com>"
 Fingerprint: **** **** **** **** **** **** **** ****
 Package    : mysql57-community-release-el7-7.noarch (@/mysql57-community-release-el7-7.noarch)
 From       : /etc/pki/rpm-gpg/RPM-GPG-KEY-mysql
上記の処理を行います。よろしいでしょうか? [y/N]y

[y]押して続行。

Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
  インストール中          : mysql-community-common-5.7.11 [                             ] 1/4
  インストール中          : mysql-community-common-5.7.11-1.el7.x86_64                    1/4 
  インストール中          : mysql-community-libs-5.7.11-1 [                             ] 2/4
  インストール中          : mysql-community-libs-5.7.11-1.el7.x86_64                      2/4 
  インストール中          : mysql-community-client-5.7.11 [                             ] 3/4
  インストール中          : mysql-community-client-5.7.11-1.el7.x86_64                    3/4 
  インストール中          : mysql-community-server-5.7.11 [                             ] 4/4
  インストール中          : mysql-community-server-5.7.11-1.el7.x86_64                    4/4 
  検証中                  : mysql-community-libs-5.7.11-1.el7.x86_64                      1/4 
  検証中                  : mysql-community-common-5.7.11-1.el7.x86_64                    2/4 
  検証中                  : mysql-community-client-5.7.11-1.el7.x86_64                    3/4 
  検証中                  : mysql-community-server-5.7.11-1.el7.x86_64                    4/4 

インストール:
  mysql-community-server.x86_64 0:5.7.11-1.el7                                                
依存性関連をインストールしました:
  mysql-community-client.x86_64 0:5.7.11-1.el7  mysql-community-common.x86_64 0:5.7.11-1.el7 
  mysql-community-libs.x86_64 0:5.7.11-1.el7   
完了しました!

とりあえずはここまで出来ました。

VMware Workstation PlayerへのVyos導入

僕は医療業界という畑違いから、IT業界への異業種転職をしようとしています。
「未経験職種に挑戦する」という意気込みは周囲も買ってくれているのですが、根本的な問題が一つ。

それは『ITに関する知識・技術がほとんどないこと』。

趣味で色々PCをいじることはありましたがそれはあくまでも趣味レベル。
職務レベルでPCを扱う上で、僕には「資格」という一定の技術評価がありませんでした。

転職を決意してからCCNAというネットワークに関する資格を取ろうと、書籍のみで勉強していましたがやはり限界がありました。
実際の操作感覚が全く分からないからです。


そこで、限られたキーワードを頼りになんとか効果的な勉強法がないかと探していました。
入社1週間を切った今頃ようやくそれを見つけました。

Vyosの導入

今回はこちらを参照。

VyOS jp

sig9.hatenablog.com

VMware Workstation Playerへの導入はCentOS7のときとほぼ一緒でした。

追記(2016/03/11/17:05)

とあるSNSで「GNS3のほうがいいかも」とありがたいコメントを頂いたので、UbuntuとGNS3を導入しました。
参考にさせていただいたのはこちら。
GNS3 | The software that empowers network professionals

絶対無糖 (Zettai Non Sugar): GNS3 の初期設定

無事導入も完了しました。

f:id:k-matsuda0901:20160311170849p:plain

Vyosも一応残しておこうと思います。


ギリギリですが、これで少しは時間稼げるかもしれません。

仮想環境でrm -rf /*してみた

タイトルの通りです。※実行しないでください。

最初に以下コマンドを入力

rm -rf /

するとコンソールにIMが。

f:id:k-matsuda0901:20160311043033p:plain

どうやらフェイルセーフ機能があるようです。

以下のコマンドを再入力。

rm -rf /*

※本当に危険なので打消線引いてあります。実行しないでください。

実行した画面のキャプチャがこちら。

よくよく見てみると

rm: cannot remove */… :Permission denied

rm: cannot remove */… :Operation not permitted

とズラ~っと表示されてたので、「もしかしたらファイルは消えずに残っているんじゃないか?」と淡い期待を抱きましたが

そんなことはなかった

f:id:k-matsuda0901:20160311045840p:plain

キレイに消えてました

f:id:k-matsuda0901:20160311044320j:plain

もう二度とやらない

CentOS 7にデスクトップ環境を導入

CentOSがインストールされたところで早速起動。

f:id:k-matsuda0901:20160310164004p:plain

コマンドプロンプトのようなもの(コンソール)が表示されました。

インストール時に設定したrootパスでログインするとコマンドが打てるようになるみたいです。

基本的なコマンドはここを参考に勉強中。

itpro.nikkeibp.co.jp

もちろんこのままでも各種操作はできるのだけれど、初心者なのでデスクトップ環境があったほうが操作しやすそうと思いGUIを導入することに。

今回はこちらを参考。

zero-config.com

早速コンソールに以下のコマンドを入力。

yum groupinstall "GNOME Desktop"

※後々[y/N]確認コマンドを入力する箇所があるのでそれを省略する場合は

yum -y groupinstall "GNOME Desktop" と入力

するとインストールするファイルの確認・ダウンロードが始まりました。

実際に画面をキャプチャした動画が以下のもの。

タイピング速度が遅いのは笑わないであげてください…

確認コマンドを入力すると今度はアップデートとインストールが始まりました。

(※余りにも長かったのでキャプチャできませんでした…)

無事にインストール作業が終わった(はず?)なので以下のコマンドでCentOSを再起動。

shutdown -r now

再起動してログイン後に以下のコマンドでGUIを起動。

startx

しばらくすると様子が変わって…

f:id:k-matsuda0901:20160310184022p:plain

無事に表示されました!(なぜか英語表記が直りませんが…)

お疲れ様でした。