クラウドとマレーシアでぐだぐだする日記

いい感じのITエンジニアでいるためにアウトプットします

仮想SRX Vagrantでの事前設定(第1回JunOSファイアーウォール設定を学ぶ)

こんにちは、シゲルです。あなたの好きなファイアウォール製品は何でしょうか?

自分はあまり好き嫌いはないですが割と自分の仕事でかかわる機会のあったのがJuniperのSRXです。SSGシリーズの終売、EOLが発表されリプレースの時期に後継機としてお客様先へ納入した思い出があります。

CiscoのルータはGNS3でシミュレーションできるようになってますがSRXというかJunOSもお家で気軽に動かせるようにしたいと思いvSRXという仮想ファイアウォールを動かせる方法を調べてみました。

仮想環境で構築を行う場合の注意する事

はじめてSRXを設定するときに直接接続したインターフェースにPingが飛ばず、訳が分からず絶望したりするのはSRXあるあるでしょうか??これから扱う仮想版のvSRXも同じことが発生します。

仮想化した環境で構築を行う場合、物理のネットワーク機器を扱う場合とは異なり結線が見えません。当たり前のようですがコレがなかなか厄介で時々ハマって物理的なケーブルやLEDランプが見えたらなぁぁぁぁとかコンソール接続ぅぅぅとか思う時があります。

ドハマリを避けるにはネットワーク図を見ながら結線を想像して作業を行うこと、リンクに関するステータス確認を行うことが地味ですが一番効果的かなーと考えています。

実行環境

自分の場合は古めのデスクトップPCで動かしています。

MacでもLinuxでもVirtualBoxが使えれば問題なく動くはずです。

VirtualBoxのインストール

仮想化環境としてVirtualBoxを使います。VirtualBoxの公式ページからダウンロードしてインストールしておきます。

Vagrantのインストール

VirtualBoxと組み合わせて使う仮想化環境構築ツールとしてVagrantを使います。Vagrantの公式ページからダウンロードしてインストールしておきます。

Vagrantプラグインのインストール

Vagrantで仮想ファイアウォールvSRXを動かすためにVagrantプラグインをインストールします。コマンドはこちらです。

コマンド

PS D:\vsrxtest> vagrant plugin install vagrant-junos
PS D:\vsrxtest> vagrant plugin install vagrant-host-shell

私の場合はホストとゲストOSのGuestAdditionsのバージョンが異なる際に、ゲストOSのGuest Additionsのバージョンをアップデートしてくれる”vagrant-vbguest”プラグインを入れていますがここら辺はお好みで。

構築したいネットワーク

Juniper vSRXを絡めてこんな感じのネットワークを構築します。家庭用のブロードバンドルータと同じような使い方です。動作確認用のクライアント(Ubuntu16)の構築も後でVagrantで行います。通常では物理のSRXの場合だとge-0/0/0が外向きに接続されるインターフェースとなりますがここではge-0/0/2を外向きのインターフェースとして使っています。

f:id:shige_shigetan:20180316012120j:plain

Vagrantfileの作成

Vagrantfileの作成を作成します。仮想ファイアウォールを"vsrx1"として、確認用PCを"Ubuntu16"として設定しています。

#
# Juniper lab 
#
# ge-0/0/0.0: management interface
# ge-0/0/1.0 - ge-0/0/7.0: user interfaces

Vagrant.configure(2) do |config|
  config.vm.box = "juniper/ffp-12.1X47-D15.4"


  config.vm.define "vsrx1" do |vsrx1|
    vsrx1.vm.host_name = "vsrx1"
    vsrx1.vm.network "private_network",
                      ip: "10.0.0.1",
                      virtualbox__intnet: "internalnet"

    vsrx1.vm.network "public_network"
    vsrx1.vm.network "private_network", ip: "192.168.33.241"

  end

# for tect client 
  config.vm.define "ubuntu16" do |server|
    server.vm.box = "bento/ubuntu-16.04"
    
    server.vm.host_name = "ubuntu16"
    server.vm.network "private_network", 
                      ip: "10.0.0.2",    
                      virtualbox__intnet: "internalnet"
    
    server.vm.network "private_network", ip: "192.168.33.242"

  end
end

この設定でSRX側はこのようになります。

  • 10.99.34.4   確認用のUbuntuと同じネットワークでge-0/0/1.0に設定される   
  • public_network PCのネットワークアダプタをブリッジ。ge-0/0/2.0に設定  

設定ファイルに書いた順番でge-0/0/1.0、ge-0/0/2.0、ge-0/0/3.0と設定されます。

この設定で確認PC側はこのようになります。

  • 192.168.33.241 ホストPCから接続用
  • 10.99.34.5  vSRXと同じネットワーク

確認用のUbuntu16についても、localhostとポート番号指定でssh接続することができますが固定IPとポート22番で接続できるように変更しています。

仮想ファイアウォールと確認用クライアントの起動

Vagrantfileを置いたフォルダで以下のコマンドを実行します。起動にしばらく時間がかかりますのでゆっくり待ちましょう。

コマンド

PS D:\vsrxtest>vagrant up 

上のVagrantfileでコマンドを実行した場合、このようにnetwork bridgeを選択するポイントで起動がとまります。中段の1)~3)のネットワークアダプターの内から適切なものを一つを選びます。今回は"1"を入力してエンターを押します。毎回起動のたびに選択するのは面倒なので後ほど設定を固定化するためVagrantfileを編集しますが、ここの記述はPCのネットワークアダプタ事に違うので注意が必要です。

実行結果

Bringing machine 'vsrx1' up with 'virtualbox' provider...
Bringing machine 'testsrv' up with 'virtualbox' provider...
==> vsrx1: Checking if box 'juniper/ffp-12.1X47-D15.4' is up to date...
==> vsrx1: Clearing any previously set forwarded ports...
==> vsrx1: Clearing any previously set network interfaces...
==> vsrx1: Available bridged network interfaces:
1) Intel(R) PRO/1000 PT Dual Port Server Adapter #2
2) Intel(R) Ethernet Connection (2) I218-V
3) Hyper-V Virtual Ethernet Adapter
==> vsrx1: When choosing an interface, it is usually the one that is
==> vsrx1: being used to connect to the internet.
    vsrx1: Which interface should the network bridge to?

外向けの通信用のネットワークアダプターの固定化

外向けの通信用のネットワークアダプターを固定化するためにVagrantfileを変更します。Vagrant upで起動したときに出てきたネットワークアダプタ名"Intel(R) PRO/1000 PT Dual Port Server Adapter #2"をそのままコピーします。これで次回の起動の時はブリッジ用のネットワークアダプタが選択された状態で起動してきます。

# 変更前
    vsrx1.vm.network "public_network"

# 変更後
    vsrx1.vm.network "public_network", bridge: 'Intel(R) PRO/1000 PT Dual Port Server Adapter #2'

仮想ファイアウォールと確認用クライアントの停止

仮想ファイアウォールとクライアントと停止するためにはVagrantfileを置いたフォルダで以下のコマンドを実行します。起動させたままホストPCの電源を切ったときに仮想マシンが壊れた場合がありました、忘れずに実行しましょう。

コマンド

PS D:\vsrxtest>vagrant halt 

実行結果

==> testsrv: Attempting graceful shutdown of VM...
==> vsrx4: Attempting graceful shutdown of VM...

以上です。次回に続きます。

パワハラ環境でプログラマーだった話、プログラミングの神様との和解

f:id:shige_shigetan:20171018133042j:plain


こんにちは、元プログラマーだったシゲルです。

今はネットワークエンジニアとして仕事をしていますが実は以前にプログラマーとして仕事をしていた事があります。私が勤めていた会社はユーザー系のシステム子会社で、この時は親会社のシステムを開発・運用する部署でプログラマーとして働いていました。

最近ではネットワークの分野についても自動化、コード化、「Infrastructure as code」という概念が勃興してきており、以前よりネットワークエンジニアにとってもプログラミングについて身近に感じる事も増えました。

このことも有り自分が過去にプログラマーとして働いていたころを振り返ることも繋がりました。そしてなぜか過去の経験の中でも一番しんどかった時期が思い浮かんでしまします。今回、この辺について書いていきます。

新入社員配属後、不穏な幕開け

自分が働いていたのはユーザ系のIT子会社で企業内のシステム(会社の人事とか給与計算とか物流とか営業管理とかを扱うシステムね)とかの開発・運用を行う会社です。2ヶ月の新人研修期間を経てとあるシステムの開発する部署に配属となりました。


新人研修の期間にやりとりしていた先輩にこのシステムの開発部署へ配属になった事を告げると反応はこんな感じでした。


私「◯◯(システム名)の開発に関わることになりました」

先輩「◯◯(システム名)、メチャクチャ大変だねー頑張ってねー!!」

私「えっ?? どういうことですか??何かあるんですか?」

先輩「いや何でもないよ、、うん、頑張ってね!」


後々で分かったのですが、どうやらこのシステムは一次開発で負債をたくさん抱えたまま、2次開発を敢行し後からメッキ処理でピッカピカに表面加工したけど、至るところから過去の負債の腐臭が漂っていたのでした。このシステムは陰で「◯◯(システム名)の保守、10年の刑」などと揶揄されるような状態だったようです。

こうして自分にとって一番つらかったパワハラの日々が幕を開けたのでした。

降り注ぐ怒涛、削られるメンタル

f:id:shige_shigetan:20171018133108j:plain

部署に配属されてからの自分の仕事内容は既存のシステムのバッチ処理の改修でその部署に2年ぐらい前からいたのが先輩がBさんでした。

しばらくして分かったのですが、先輩BさんはPCに作業中に「アホ◯◯(会社名)♪」、「クソ◯◯(会社名)社員〜♪」、「死ね、クズが」とPCを使いながらディスプレイに向かってひたすら喋る人だったのです。これはエンジニアあるあるなのかもしれませんが先輩Bさんはとにかく弁の立つ人で日々の口頭試問や進捗報告でかなり詰められる事が多かったです。

また先輩Bさんに仕事を頼まれて完了の報告に行くと、「これ自分で何パーセントぐらいの出来だと思う?」と聞かれ「100パーセントです!」と言い切ると今度は細かいアラ探しをしてきて間違いを指摘し「え?何これ??君は100パーセントの出来ですって言ったよね??」と責め立てる訳です。もし私が「80〜90%ぐらいの出来です。」と言おうものなら「えっ、何で100%にして持ってこないの?なめてんの??」と言い返されます。なんと見事なダブルバインド!!

余りに辛いので親友にぶちまける

そんなこんなで自分が追い詰められている事が強く自覚できたので生まれて初めて一番の親友に仕事の相談をしてみる事にしました。友人には夜眠れなくなってきている事と日常生活で何もする気が無くなってきてる事を伝え、これまで職場の状況を説明しました所、何も言わずただ話を聞いてくれました。※この友人には今でも本当に感謝しています。

その友人に相談するまで相当ストレスがたまっていたのか話を聞いてもらえ随分と気持ちが楽になりましたのでもっと早めに話をすれば良かったと思いました。

部署異動は突然に

そんな辛い日が続きますが、ある日事態が急転します。課長のBさんから部署異動を告げられ、自分が元のプログラム開発の部署ではなくインフラ関係の部署に移動する事になりました。 ちょうど旧システムのハードの老朽化に伴いサーバの仮想化の案件が増えてきた所で人手が必要になってきたそうです。(まあ異動した先にAさんという人間クラッシャーと呼ばれた人が居たわけですが、、)


その後、異動後の部署でサーバの仮想化の案件を案件をバンバンこなす事で自分の仕事に関する自信も回復し、この頃になるとプログラムを開発していた部署のときに悩まされていた体の不調もやる気の枯渇も徐々に復活してきました。

このまま、めでたしめでたし末永く幸せにはたらきましたとさ、、、、とは行きませんでして、結局、現在は違う会社に勤めています。

その後の話、プログラムについて

かれこれ10年ほど前の話で今では眠れないなどの症状があるわけではありません。 なんですが部署を移ってインフラ周りのエンジニアになった関係で自然とプログラミングからは縁遠くなり、すっかりプログラムを書くことは無くなりました。またその後、パワハラ環境の有った会社を離れた事などもあって、すっかりネットワークエンジニア、インフラエンジニアとして仕事する事が多くなり仕事としてプログラムを書くということはすっかり無くなってしまいました。

ところがですね、最近ワタクシにプログラミングの神様がささやくわけですよ。


「またプログラミングでもやってっみてもエエんちゃうん??」、「インフラ関係の機器の設計、設定とかもうそろ飽きたやろ??」、「なんならpythonでネットワーク機器の構築自動化とかやってみてもエエんやない??自分、前に気になって調べとったやん??」


もうねー、猛プッシュな訳ですよ。 プログラミングの神様が「そなんなに毛嫌いせんでもええやん、そろそろも仲直りしてもエエんやないか、ユーやっちゃいなよ!!」と迫ってきます。

という訳で10年弱ぶりぐらいにプログラミンを再開する事にしました。


この話はもう少し続きます。

GNS3上でルーターを外部ネットワークや仮想OSと連携される方法を調べてみた

こんにちは、GNS3でDockerを連携させる設定を見つけて驚いているシゲルです(使ってみるとは言ってない。)先日、こんな感じでGNS3のインストールに関する記事を書いてみました。今回はGNS3上のルータを動作させているPCにつながっている外部ネットワークへ接続したりGNS3上でVirtualBoxでつくった仮想サーバを連携させてみます。

shigeluma-tech.hatenablog.com

GNS3なんですがちょこちょこ触ったりしているとやっぱり、ルータ、スイッチだけでは無くゲストOSと連携させてみたーい、物理ネットワークの方にも繋げるんなんて事もやってみたくなりましたので、今回調べてみました。

GNS3で物理NICを通じて外部接続する方法

ローカルサーバを使う場合(PCの物理NICを直接使う)

外部ネットワークと連携させる場合は下の画像のようなイメージです。「Cloud」のパーツと接続されたRouterのインターフェースがPCのネットワークのセグメントに接続されます。

PCのインターフェースとRouterのインターフェースをブリッジ接続されたようになります。

f:id:shige_shigetan:20171014214352j:plain

設定方法はメニューの左側より「cloud」のパーツを配置し、次に「Router」を配置して接続します。

f:id:shige_shigetan:20171014201318j:plain

Routerの設定ですがPCを接続しているネットワークセグメントですがDHCPでIPを配布しているため、Router側もDHCPクライアントとしてIPが取得できるようにしています。

interface FastEthernet0/0  
ip address dhcp  
duplex auto  
speed auto  

これでルータ側からPCに接続されたネットワーク(お家のルータなど)やインターネット向けに通信ができるようになります。

R1#ping 192.168.17.1

Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 192.168.17.1, timeout is 2 seconds:
!!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max = 32/60/124 ms
R1#

R1#ping 8.8.8.8

Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 8.8.8.8, timeout is 2 seconds:
!!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max = 60/63/68 ms

GN3と仮想OS VirtualBox の連携方法

連携させる仮想OSとしてWindows 2012を使います。ホスト名は「win2012r2」ととしています。ほぼほぼインストールしたままの状態です(作業性を向上させるWindows FirewallはオフにRemote Desktopはオンにしています)

注意点としてはVirtualBoxネットワークアダプターを外しておく必要がある点です。ゲストVMを作ると通常「NAT」でネットワークアダプタが構成されますがそのままだとエラーになります。ですので外して「Not attached」になるようにしておきます。

f:id:shige_shigetan:20171014201319j:plain

ルータ側(R1)のコンフィグは仮想サーバへDHCPでIPを配るためインターフェースとDHCPサーバのコンフィグだけを実施しています。

続いてGNS3の設定をしていきます。メニューから「Edit」から「Preferences」を選択し「VirtualBox」の項目に進み「New」を選択し「Run this VirtualBox VM on my local computer」そのまま「Next」で次に進みます。

f:id:shige_shigetan:20171014201322j:plain

VM listから対象の仮想サーバを選択し、「Finish」で完了です。

f:id:shige_shigetan:20171014201324j:plain

GNS3の「Startボタン」を押すとRouterとゲストVMが起動してきます。 GNS3を終了される時、VirtualBoxの仮想OSも自動的に停止しますが、これが時々上手く動作しないようで強制的にシャットダウンした状態になります。そして次回起動すると下の写真のようにリカバリーに入る場合があるので焦らずに仮想OSを起動させましょう。

f:id:shige_shigetan:20171014201321j:plain

ついでに連携させた仮想サーバからNATしてインターネットに出てみる

次に折角なのでGNS3上でルータに接続した仮想OSから外部のネットワークに接続してみます。 ネットワーク図はこんな感じです。

f:id:shige_shigetan:20171015163048j:plain

仮想サーバ側のネットワークのIPアドレスをGNS3を動かしているPCが接続されているネットワークのIPアドレスに変換する必要があるのでルータにNATの設定が入れています。

ip nat inside source list 10 interface FastEthernet0/0 overload
access-list 10 permit 192.168.0.0 0.0.0.255

interface FastEthernet0/0
  ip address dhcp
  ip nat outside

interface FastEthernet0/1
  ip address 192.168.0.254 255.255.255.0
  ip nat inside

設定後、ゲストVMからPingを打つと何故か異常に遅いですがインターネットネットに接続する事が出来ます。

PS C:\Users\Administrator> ping 8.8.8.8

Pinging 8.8.8.8 with 32 bytes of data:
Reply from 8.8.8.8: bytes=32 time=1299ms TTL=60
Reply from 8.8.8.8: bytes=32 time=849ms TTL=60
Reply from 8.8.8.8: bytes=32 time=648ms TTL=60
Reply from 8.8.8.8: bytes=32 time=856ms TTL=60

クアラルンプール中心部でWifiの使えるカフェ、インターネットをゲットする方法

こんにちは、シゲルです。インターネッツしてますか?

こちらで生活するようになり家でインターネットが使える様になってからは全く気にしなくなりましたが、クアラルンプールに初めて来た時割りとにこまった事がありました。

それは街なかで気軽にインターネッツするに方法が分からない、というものでした。

しばらく生活するにつれて現地の様子が少しずつ分かったのでクアラルンプール周辺でインターネッツする方法にを紹介していきます。日本からの出張などの場合も参考になるかと思います。

 スタバのWifiでインターネットをゲットする

スタバのWifiでゲットする方法

日本でもおなじみスターバックスですがスタバで飲み物食べ物を買うとレシートにこんな感じで無線LANの接続先、パスワードが書いてあります。

f:id:shige_shigetan:20171007000952j:plain

ちょこっと分かりにくいですが画像の下の「Powered By Y5ZONE」の部分が無線LANの接続先でパスワードがFree Wifi codeの下の部分です。パソコンから見るとSSIDが見えます。

f:id:shige_shigetan:20171006234253p:plain

ブラウザでインターネットを使おうとするとこちらのページに飛びますので「Give Me Wi-Fi」をクリックします。

f:id:shige_shigetan:20171006234249j:plain

次にWifi Codeにレシートに書いてあるコードを入力してボタンを押します。これで接続完了です。

f:id:shige_shigetan:20171006234250j:plain

 実際の接続スピードはこれぐらい

実際のクララルンプールのスターバックスでインターネットのスピードを調べてみました。 BNRスピードテストで114kbpsと低めの数字がでてますが、ウェブサイトを見るぐらいなら全く問題なく使えました、動画は厳しいといったところでしょうか。

f:id:shige_shigetan:20171006234252j:plain

インターネットの速度は店舗にもよりますし、同時に使っている人の人数にもよるのでご参考まで

コーヒービーンのWifiでインターネットをゲットする

コーヒービーンのWifiでゲットする方法

日本ではあんまり馴染みがありませんがコーヒービーンは東南アジアでも広く展開しているコーヒーチェーンです。飲み物食べ物を買うと Wifiのアクセスポイントとパスワードが書いてありますので繋げます。

f:id:shige_shigetan:20171007011409j:plain

ブラウザでインターネットを使おうとするとこちらのページに飛びますので「Give Me Wi-Fi」をクリックします。

f:id:shige_shigetan:20171006234503p:plain

Wifi codeの欄にレシートに書いてあるコードを入力してボタンを押します。これで接続完了です。

f:id:shige_shigetan:20171006234502p:plain

 実際のインターネット回線速度はこれぐらい

実際のCofeeBeanでインターネットのスピードを調べてみました。BNRスピードテストで1.25Mbpsとまずまずの数値が出ています。普通にウェブサイトを見るぐらいなら全く問題なく使えます。

f:id:shige_shigetan:20171007012043p:plain

インターネットの速度は店舗にもよりますし、同時に使っている人の人数にもよるのでご参考まで

関連記事

クアラルンプールの空港から市内へ行く方法、市内から空港へ行く方法

Active DirectoryサーバのP2V移行で地獄感のあるトラブルをやらかした話

f:id:shige_shigetan:20170914020448j:plain

こんにちはシゲルです。だいぶ前にあるお客さん先のActive DirectoryサーバーをP2Vで移行する案件で盛大にトラブる出来事がありまして、割りとヘコんだ事がありました。

この時、エンドユーザの環境にもバッチリ影響が出まして、変な汗出まくり、キモ冷やしまくりです。原因としては同じネットワークセグメントに同じ様な(複製した)プライマリーADサーバーがありコンフリクトしてアウト、といった感じです。復旧作業しようにもドメインコントローラが壊れてるおかげで認証関係が死んでおりサーバにログインすらも出来きないといった具合です。

とゆう訳で今回のエントリーではADサーバーのP2移行で派手にトラブった件を順を追って話ていきます。

これを聞いた瞬間 身の毛のよだつような恐怖の疼き(クレーム的な意味で)を味あわせることでしょう(ギャー)。あんまりトラブルの内容に関係ないですが仮想化環境はHyperVでした。

障害の有った案件の概要

ざっくりいうと物理で2台のADサーバがあって、その内の1台はファイルサーバを兼用していて、この1台のサーバをP2Vで仮想化環境(HyperV)に持っていくといった内容です。 f:id:shige_shigetan:20170914020448j:plain

Day00 移行の準備あれこれ

移行作業に割ける時間は週末の二日間(できれば土曜日のみの方が望ましい)だったのでファイルサーバで使用しているデータの容量が多かったので事前にファイルサーバで使っているデータドライブだけ先に移行するような処置をとりました。

実際のデータ移行、データ同期はRobocopyコマンドで実施していましたが「ViceVersa」というツールが有ったので途中からこちらを使っています。

自分「P2V移行したタイミングでADのプライマリーが2つになっちゃいますが、、、不味くないですか??」

上司「コピーした方のIPを変えとけば大丈夫っしょ?」

自分「ああ、そうっすか、、、なら大丈夫っすね!」

これが後にあんな事になるんて、、、、全然大丈夫じゃなかった。

Day01 ADサーバー P2V移行作業 当日の様子

当日、P2V移行作業はDisk2vhdを使っておこないました。前日までの作業でデータ用のドライブのディスクは前もって大部分を移行させておいたので データドライブについては停止点を作って最後のデータ同期を行い、システムドライブについてはDisk2vhdを使ってvhdファイルに変換しています。

実はここの仮想OSに変換したあとの起動の所でハマりました。移行したADサーバのOSはWindows2008だったのですが、通常通り仮想OSを作るとデフォルトで UEFIになってしまい、元の物理サーバがBIOSなので起動できなくなりました。ですので仮想OSはBIOSにしてつくりましょう。

Day02 不穏なネクストビジネスデー データ移行できてない??

まあ、そんなこんなで週末の移行作業を終えての月曜日、ネクストビジネスデーをむかえました。しかし、朝からお客様の所でスタンバイしていると

お客「何か、〇〇のフォルダのファイル足りないみたいなんだけど??データの移行ちゃんと出来てるんですかっ???」

自分「マジか、やばい、、、、、」

原因をしらべてみましたが、データ移行で最初に使った「robocopy」が不味かったようです。しかもこの不具合は仕様なんですと、、爆発してしまえ!!

参考:robocopy後のコピー先フォルダが隠しフォルダになってしまう

お客様と協議の末、とりあえず古い元のサーバのデータから戻せばOKということになりました。お腹の下の方に冷たいものを感じなから、旧サーバを立ち上げ新しいサーバへデータをコピーします。

めでたし、めでたし、、、、、の筈だった。

Day03 そして崩壊へ ADの認証関係が3割コケる

データのリカバリーを実施した翌日、そこにさらなる障害が起こりました。ドメイン環境のPCのログインとか、ファイルサーバへのアクセスとかADの認証の機能を使うものが全体の3割位が失敗するのです。エラーメッセージはこんな感じ。セキュアチャネルの破損というやつですね。

エラーメッセージ: The security database on the server does not have a computer account for this workstation trust relationsship

原因をしらべようと新しいサーバへ入ろうとしますが、上のエラーメッセージが出てデータADの認証が死んでいるのでサーバにログインしたくても出来ない。

Windows系OSでおなじみのこちらの裏技もつかって見ましたがコマンドプロンプトを立ち上げることはできますがAdministratorのパスワードが変更できませんでした。

Windowsでログインパスワードを忘れたときに無理やり書き換える方法

Day04 地獄感のあるのリカバリー 

サーバにログインすることすら絶望的な状況でしたが色々、調べてみると、以下のような状況に有ることがわかりました。図にするとこんな感じ。 f:id:shige_shigetan:20170914020457j:plain

P2Vして仮想環境に移したサーバ:自分自身をプライマリーサーバとして認識しているが認証関係が壊れてる、AD環境のPCとかは基本的にこのサーバを参照している。元の物理サーバ、プライマリー、セカンダリー:こちらのサーバ同士でドメイン・サーバのメンバーになっている。

はい、完全にこれはP2Vしてプライマリーサーバが2個にしてしまったのが原因ですね。データの移行ミスのリカバリー対応でサーバを古い物理サーバを立ち上げた所、同じセグメントにプライマリーのADサーバが2個ある状態にしてしまっていたのです。

最終的にWindows系OSでおなじみの裏技を使ってログイン無しにコマンドプロンプトから強制的にプライマリーのドメインサーバを降格させ(6回警告がでる例のアレです)、セカンダリサーバをプライマリーに無理やり昇格させ、もうサーバを一度ドメインサーバとして昇格させる手順で復旧する事ができました。

まとめ

以前にActive DirectoryP2V移行やらかしたトラブルについて、書いてみました。 随分と時間が経ちましたが今でも思い返すとお腹の下の方に冷たいものを感じます。

  • 上司のいうことはアテに出来ません、とまでは言いませんが最終的にツケは自分で払うことになります。
  • 同じセグメントにプライマリーADサーバ2つはトラブルの元です、移行が終わったらとっとと降格させてましょう。
  • できるならプライマリーADを別のサーバへ移転させてから、P2V移行しましょう。

クアラルンプールの空港から市内へ行く方法、市内から空港へ行く方法

こんにちは、クアラルンプールの空港にはいろいろあって10回以上行ったかなー、と振り返ってます。しげるです。

今回クアラルンプールの空港から市内までの移動方法、交通手段以下の3つがあるので詳しく紹介して行きます。

  • KLIAエクスプレス(特急電車)
  • 空港バス(スカイバス)
  • Grab・Uberなどのタクシー配車サービス

クアラルンプールの空港(KLIA, KLIA2)について

日本からクアラルンプール国際空港(KUL)に来る場合は大きく分けてKLIAとKLIA2の2つのターミナルがあります。

KLIA
KLIAは元々のクアラルンプールの空港ターミナルです。日本からだとJALANAでくる場合はこちらのターミナルになります。

KLIA2
KLIA2は2014年5月にできた格安航空会社(LCC)向けのターミナルです。日本からエラアジアで来るとこちらのターミナルとなります。

クアラルンプール国際空港から市内中心部まではおよそ60kmあり割りと距離があります。比較のためアジア各国の空港から中心部までの距離を調べてみるとマニラ 10km、ジャカルタ30km、シンガポール25kmとなっており空港から市内まで遠い分かります。ちなみに東京駅から成田空港は70㎞です。

空港(KLIA, KLIA2)からKLセントラル、市内まで

KLIAエクスプレス

  • 到着時間のブレなさ:★★★
  • 料金の安さ:★
  • 営業時間:空港発(KLIA、KLIA2)発の場合は始発が4:55、 終電が0:55 市内から(KLsentral駅)発は始発が5:00、終電が0:40 15分〜20分毎に出発します
  • 目的地までの乗り換えの手間:KLsentral駅から乗り換える必要があります

空港からKLセントラルまで28分と所要時間だけで考えるとナンバー1と言える交通手段です。しかし、この圧倒的に有利なポジションを知ってか知らずかKLIAエクスプレスの料金は2016年1月1日に35RM→55RMに一気に値上げされています。

なんだか割高な気がするのであんまり利用していませんが、「ほんまに時間あらへんねん!!マジでヤバイねん!!!!」時は、これ一択です!確実に最速・最短で空港からKLセントラル駅までたどり着けます。

※KLセントラル駅からホテルや目的地にGrab、Uberなどで移動する必要があります。

空港バス(スカイバス)

  • 到着時間のブレなさ:★
  • 料金の安さ:★★★
  • 営業時間:複数のバス会社があり、だいたい24時間バスが出ています(2017年6月現在 )
  • 目的地までの乗り換えの手間:KLsentral駅から乗り換える必要があります

空港からKLCentralのバスターミナルからおおよそ1時間から1時間10分ぐらいです。自分が乗ったバスではなぜか時計が15分ぐらい遅れているのがお約束した。  

ちょっと時間通りに付くのか心配になりますが、そんなバスでも大きく遅れることは今までありません。荷物に手持ちのダンボール箱などはなくスーツケースだけの場合だと、このスカイバスが使いやすいです。

※KLセントラルからホテルや目的地にGrab、Uberなどで移動する必要があります。

空港から市内からはKLIA2なら1Fの到着ロビーの出口の手前にあるチケットカウンターでチケットを買うことが出来ます。

Grab・Uberなどのタクシー配車サービス

  • 到着時間のブレなさ:★★
  • 料金の安さ:★ ただし複数人で乗るとお得です
  • 営業時間:深夜だろうといつでもOK
  • 目的地までの乗り換えの手間:タクシーなので直接行けます。

営業時間の所に深夜だろうと何時でもOK書きましたが、大体空港の周りにタクシーのドライバーはいるのでつかまります。待ち時間も5分から10分ぐらいしかかかりません。  

実はGrabやUberの空港から市内、また逆の市内から空港までの料金はプロモーションにより65RMで固定となっています(2017年6月時点)。実際には市内中心部までの高速道路の料金と合わせて75RM弱ぐらいになります。

※空港からの移動手段としてクーポンタクシーがありますが値段が割高(RM110ぐらいだったかな?)で車もボロい汚くて良いことがないので止めておきましょう。一度だけ使ったことがありますが悲しい気持ちになりました。

まとめと実際どの交通手段を使っているか??

まとめとして表にするとこんな感じです。

KLIAエクスプレス 空港バス Grab,Uber
到着時間のブレなさ ★★★ ★★
料金の安さ ★★★ ★★ 複数人だとお得
乗り換えの手間 ★★★

自分の場合は空港から市内へ向かう場合は夜遅くて荷物が多い場合が多いのでGrab、Uberで家まで直行の一択となります。市内から空港に行く場合はKLSentralまでGrab、Uberで行ってKLSentralから空港バスで空港へ行くことが多いです。

クアラルンプールの空港から市内までの移動手段についてまとめてみました。お役にててれば幸いです。

関連記事

クアラルンプール中心部でWifiの使えるカフェ、インターネットをゲットする方法

GNS3 Windows版をインストールするときに知っておきたいこと

f:id:shige_shigetan:20170603200806j:plain

こんにちは、ITインフラ系エンジニアのシゲルです。
先日、GNS3のバージョン2.02がリリースされました。ネットワークエンジニアの大切なおもちゃ大変便利なツールとして知られるGNS3ですがバージョンが新しくなるにつれて仮想マシンを作る必要があるようになりインストールが難しくなっているように感じます。

今回、GNS3バージョン2 をインストールしてみたのですが比較的新しいバージョンの情報がWeb上に無く割りとハマりました。実際にハマった点をふまえて実際の手順を紹介したいと思います。

インストールする構成

GNS3 version1.5 あたりからGNS3.VMをインストールしなければならなくなったようで、このためGNS3とGNS3.VMのネットワーク構成を頭に入れて置く必要があると感じました。図にするとこんな感じです。

f:id:shige_shigetan:20170603200714j:plain

ホストOSとゲストOS(GNS3VM)対応はこの通りとなっています。

  • HostOnly adapter: ホストOS側:VMnet1 GNS3VM:eth0
  • Nat adapter: ホストOS側:VMnet1 GNS3VM:eth1

インストールしたソフトウェアのバージョン

今回インストールしたソフトウェアのバージョンを書いておきます。 GNS3用のVMにはVirtualBox向けとVMWare player向けがありますが自分はVMWare player向けをオススメします。(自分は普段はVirtualBoxを使う事の方がが多いです)というのもVirtualBox向けのGNS3用VMネットワークアダプターの編集が必要となり難易度が高いです。

  • GNS3をインストールしたホスト:Windows10 64bit (Windows7以降であればOKなはず)
  • GNS3 バージョン2
  • GNS3.VM.2.0.1(VMware.Workstation向け)  GNS3本体のバージョンと揃える必要があります。
  • VMware Workstation 12 Player12.5.6
  • VMware-VIX-1.15  version 1.15以上が必須で、現時点(2017年6月)の最新版はversion 1.15です。

実際のインストール手順

実際のインストール手順を説明していきます。

VMware Workstation 12 Playerのインストール

VMware Workstation PlayerをVMwareの公式サイトからダウンロードします。インストールはexeファイルをクリックして、全て「次へ」を順に押して進めます。

VMware VIX 1.15のインストール

VMware VIX 1.15をVMwareの公式サイト からダウンロードします。

GNS3との関連で必ずversion 1.15以上をダウンロードしてください。 こちらも同じくインストールはexeファイルをクリックして、全て「次へ」を順に押して進めます。

GNS3 version2 のインストール

GNS3をGNS3の公式サイトからダウンロードします。※要登録でメールアドレスが必要となります。

exeファイルをクリックしてインストラーを起動します。 f:id:shige_shigetan:20170604093238j:plain

基本的に「次へ」を押して進めていきます。 f:id:shige_shigetan:20170604093430j:plain

f:id:shige_shigetan:20170604093715j:plain

自分のWindowsマシンにはWireSharkがインストールされていたので、もう一度インストールするか確認が出ました。 今回は再インストールする様に進めていきます。 f:id:shige_shigetan:20170604093913j:plain

次にWireSharkのダウンロードが始まりますがインターネット接続ができるにも関わらずダウンロードできなかったので「いいえ」を押してキャンセルして進めます。あとからWireSharkについては個別で導入しても問題ありません。

f:id:shige_shigetan:20170604093923j:plain

f:id:shige_shigetan:20170604093946j:plain

f:id:shige_shigetan:20170604095454j:plain

続いてSolarWindsの登録を求められますが広告メールを避けたかったため自分の場合はキャンセルしてすすめました。

f:id:shige_shigetan:20170604095509j:plain

「No」を選択して「Next」をクリックします。

f:id:shige_shigetan:20170604095502j:plain

しばらく待つとインストールが進みこの画面が出たら完了です。

f:id:shige_shigetan:20170604095824j:plain

GNS3VM(VMWare player向け)のインストール

GNS3 VMを(GNS3の公式サイト)からダウンロードします。ダウンロードを進めると「GNS3.VM.VMware.Workstation.2.0.1.zip」といった名前のファイルが出来ますのでこちらを解凍すると「GNS3 VM.ova」のというファイルが出来ます。

VMware Workstation 12 Playerを実行してメニューから「仮想マシンを開く」を選び「GNS3 VM.ova」を選択します。

f:id:shige_shigetan:20170603203026j:plain

この時、フォルダのパスは変更せずにそのままにして下さい。私の場合、仮想マシンのファイルをDドライブに置いていた所、GNS3から仮想マシン(GNS3.VM)が認識できず原因がわからずハマりました。

f:id:shige_shigetan:20170603202556j:plain

GNS3のインストールしたらはじめにやること

おめでとうございます!ソフトウェアのインストールが終わりましたので基本的な設定に進んでいきます。基本的に設定はGNS3を初回起動したときのセットアップ画面から設定していますが、あとからメニューから「Edit」->「Preference」と選択し設定を行う事もできます。

GNS3のローカルサーバのIPアドレスの設定

GNS3を起動させるとこちらのセットアップ画面となります、一番上の「Run modern IOS(IOSv or IOU), ASA and appliances from non Cisco manufactures」を選択します。

f:id:shige_shigetan:20170604105051j:plain

次にローカルサーバの設定に進みます、「Host binding」からGNS3で使うIPアドレスを選択しますが、「127.0.0.1」を選択し「次へ」をクリックします。次へを押したタイミングで「Could not connect to [設定したIPアドレス] 対象のコンピュータによって拒否されたため、接続できませんでした」とエラーが出る場合がありますが、自分の場合はタスクマネージャから「gns3.exe」、「gns3server.exe」のプロセスを終了させてもう一度実行すると上手くできました。

f:id:shige_shigetan:20170604110142j:plain

ローカルサーバの設定の後は連携させるGNS3VMの設定に進みます。このページの手順にそっていれば以下のように選択されているはずなのでNext」をクリックします。

f:id:shige_shigetan:20170604111453j:plain

少々、GNS3VMとの通信に時間がかかります。元の画面でServerSummaryのウィンドウでGNS3VMのステータスがグリーンになっていれば成功です。 ここでも「Could not connect to [設定したIPアドレス] 対象のコンピュータによって拒否されたため、接続できませんでした」とエラーが出る場合がありまタスクマネージャから「gns3.exe」、「gns3server.exe」のプロセスを終了させてもう一度実行するとOKでした。

f:id:shige_shigetan:20170604112609j:plain

Cisco IOSの設定

続いてCisco IOS templateの設定を行います。 Local Serverで動作させる方法とGNS3VMで動作させる方法がありますがGNS3VMを選択した方が安定的に動いたと感じましたので全てGNS3VMを選択しています。

メニューから「Edit」->「Preferences」を選択し「Dynamips」「IOS router template」を選択します。

f:id:shige_shigetan:20170604120304j:plain

「New」を選択し「Run this IOS router on the GNS3 VM」を選んで「Next」をクリックします。

f:id:shige_shigetan:20170604120342j:plain

ローカルにあるIOSのファイルを選択するとIOSを解凍するかと聞かれますので「OK」を押します。

f:id:shige_shigetan:20170604120653j:plain

次にテンプレートにNetwork adaptersとWICmodulesを設定するかどうか聞かれますが、ココらへんはお好みでOKです。あとから変更する事もできます。

f:id:shige_shigetan:20170604121430j:plain

f:id:shige_shigetan:20170604121434j:plain

続いてdle-PCの設定に進みます。GNS3を動かすときにCPU使用を抑えるための設定になります。「Idle-PC finder」をクリックしてしばらくするとIdle-PCが計算されるので「OK」、「finish」を押して完了です。

f:id:shige_shigetan:20170604123422j:plain

お疲れ様でした!これで完了です。テンプレートの設定が完了しましたのでGNS3でRouterを配置出来るようになります。あとは自由にトポロジーを作ってネットワークの勉強を進めていきましょう。

おまけ:Version2の新機能を紹介する

プロジェクトの自動保存

作成したプロジェクトが自動で保存されるようになりました。しかし、プロジェクトを閉じる場合前にRouterのコンフィグを保存するために「write memory」を行なって下さい。この新機能に引きづられてメニューに入っていた「プロジェクトを保存する」(Save project)が無くなっています。別名で保存する(Save project as...)というボタンは残っていますが開いているプロジェクトと同じ名前で保存しようとするとエラーとなるので注意が必要です。

外部接続のテンプレート化

GNS3上で動作させているルーターから外部のネットワーク(PCが接続されているセグメントやインターネットなど)ための設定が「Cloud」のアイコンでテンプレートかされています。前バージョンではMarketPlaceからダウンロードしてくる必要がありました。




関連記事

GNS3上でルーターを外部ネットワークや仮想OSと連携される方法を調べてみた