アーカイブ

2010年12月

カテゴリ:

ここ数年はCCIEの勉強で入力ばかりだったので、来年は出力に力を入れます。ということでメールマガジンを始めてみました。Cisco関連だけ、Linux関連だけは結構ありますが両方まとめて扱っているメールマガジンは無いようなので、それなりに役立つと思います…。

週1回、水曜日発行です。少なくとも2011年一杯は続けるつもり。ご希望の方はこちらから登録して下さい。もちろん無料です。

ネットワークとサーバの世界

サンプル号は内容的にちょっと寂しかったので"Linux Tips"と"今週見たYouTube"という項目も追加してみました。

実質第一号を先ほど発行しました。バックナンバーはこちらからご覧いただけます。

ネットワークとサーバの世界 バックナンバー

クリスマスプレゼント

カテゴリ:

Ccie_plaque昨日アメリカのUPSより、荷物が発送されましたよとメールが届いた。発送者はCisco。とすると中身はあれしかない…。トラッキングナンバーで追っていると今日の昼に成田空港に到着した。うちに届くのは明日かなと思っていたら、15時過ぎには配達完了。すっごい速いね。届くのは10-12週間後とあり、年明けを予想していたので思いがけないクリスマスプレゼントになりました。

中身はもちろんこれ、CCIE合格者に送られる盾だ(ちなみに英語では"plaque")。これでやっと合格が実感できた。この盾を手に入れるのにどれだけの時間とお金を費やしたことか…。現在、これを部屋のどこにかけるか思案中。

ちなみにこの盾のデザインは現在のものが第5世代らしい。前回のデザインが地味過ぎるとの声が多かったようで、金のメダル付きという分かりやすいデザインになったみたい。

カテゴリ:

IOSでフレームリレーの設定をする際にmap-classをよく使いますが、設定値の確認はどうすればいいのでしょうか。class-mapであればそのままshowコマンドで指定できますが、同じことをmap-classで実行するとエラーとなります。何か納得いかないですね…。

R1#show version | include IOS
Cisco IOS Software, 3700 Software (C3725-ADVENTERPRISEK9-M), Version 12.4(15)T12, RELEASE SOFTWARE (fc3)
R1#show class-map
Class Map match-any class-default (id 0)
   Match any

Class Map match-all MYCLASS (id 1)
   Match input-interface Loopback0

R1#show map-class

% Invalid input detected at '^' marker.

map-classを確認するにはshow running-configを利用します。

R1#show running-config map-class
Building configuration...

Current configuration:
!
map-class frame-relay FRTS
frame-relay cir 192000
frame-relay bc 19200
end

もちろん"show running-config | begin map-class"としても基本的には同じです。

カテゴリ:

IOSでルータなどの設定を行っているときに、直接設定ファイル(running-config)を見ることがありますが、show running-configをそのまま実行するのはあまり便利とは言えません。遅いルータであれば時間がかかるし、そもそも全体を表示すると必要な部分を探すのが面倒です。

パイプ"|"を活用することで、running-configをより見やすくすることが可能です。

R1#show version | include IOS
Cisco IOS Software, 3700 Software (C3725-ADVENTERPRISEK9-M), Version 12.4(15)T12, RELEASE SOFTWARE (fc3)
R1#show running-config | ?
  append    Append redirected output to URL (URLs supporting append operation
            only)
  begin     Begin with the line that matches
  exclude   Exclude lines that match
  include   Include lines that match
  redirect  Redirect output to URL
  section   Filter a section of output
  tee       Copy output to URL

例えばOSPFの設定を確認する時に"begin"を使います。"begin"の引数に指定した文字列に一致した行以降が表示されることが分かります。

R1#show running-config | begin router ospf
router ospf 1
router-id 17.17.1.1
log-adjacency-changes
network 12.12.12.1 0.0.0.0 area 0
network 17.17.1.1 0.0.0.0 area 0
!
〜略〜

上記の例はOSPFの設定値が確認できましたが、"include"を利用すると引数に指定した文字列を含む行のみを表示できます。

R1#show running-config | include ospf
ip ospf priority 0
router ospf 1

上記の例でインターフェイスにプライオリティが指定されていることが分かります。"section"を利用すると関連した設定値がまとめて表示できます。

R1#show running-config | section ospf
ip ospf priority 0
router ospf 1
router-id 17.17.1.1
log-adjacency-changes
network 12.12.12.1 0.0.0.0 area 0
network 17.17.1.1 0.0.0.0 area 0

インターフェイスの設定を確認するにはパイプは不要で、そのままインターフェイス名を指定します。

R1#show running-config interface fastEthernet 0/0
Building configuration...

Current configuration : 94 bytes
!
interface FastEthernet0/0
ip address 12.12.12.1 255.255.255.0
speed 100
full-duplex
end

最後に"linenum"を指定すると行番号の表示が可能です。

R1#show running-config linenum
Building configuration...

Current configuration : 1525 bytes
     1 : !
     2 : ! Last configuration change at 15:48:13 JST Mon Dec 20 2010
     3 : !
     4 : version 12.4
     5 : service timestamps debug datetime msec
〜略〜

カテゴリ:

Cisco IOSの設定でアクセスリストを利用する場合、作成したアクセスリストが正しく設定されているかどのように確認すればいいでしょうか。下記のようなルーティングテーブルがあります。

R1#show version | include IOS
Cisco IOS Software, 3700 Software (C3725-ADVENTERPRISEK9-M), Version 12.4(15)T12, RELEASE SOFTWARE (fc3)
R1#show ip route ospf
     17.0.0.0/8 is variably subnetted, 3 subnets, 2 masks
O       17.17.3.3/32 [110/66] via 12.12.12.2, 02:52:18, FastEthernet0/0
O       17.17.2.2/32 [110/2] via 12.12.12.2, 02:52:18, FastEthernet0/0
O E2 192.168.8.0/24 [110/20] via 12.12.12.2, 00:05:04, FastEthernet0/0
     23.0.0.0/24 is subnetted, 1 subnets
O       23.23.23.0 [110/65] via 12.12.12.2, 02:52:18, FastEthernet0/0
O E2 192.168.4.0/24 [110/20] via 12.12.12.2, 00:05:17, FastEthernet0/0
O E2 192.168.5.0/24 [110/20] via 12.12.12.2, 00:05:15, FastEthernet0/0
O E2 192.168.6.0/24 [110/20] via 12.12.12.2, 00:05:11, FastEthernet0/0
O E2 192.168.7.0/24 [110/20] via 12.12.12.2, 00:05:08, FastEthernet0/0
O E2 192.168.0.0/24 [110/20] via 12.12.12.2, 02:51:11, FastEthernet0/0
O E2 192.168.1.0/24 [110/20] via 12.12.12.2, 02:51:11, FastEthernet0/0
O E2 192.168.2.0/24 [110/20] via 12.12.12.2, 00:05:22, FastEthernet0/0
O E2 192.168.3.0/24 [110/20] via 12.12.12.2, 00:05:20, FastEthernet0/0

ここでは192.168で始まるネットワークを対象とします。4つのアクセスリストを作りました。第3オクテットの値を0, 1, 3, 7としています。

R1#show ip access-lists
Standard IP access list AC1
    10 permit 192.168.0.0, wildcard bits 0.0.0.255
Standard IP access list AC2
    10 permit 192.168.0.0, wildcard bits 0.0.1.255
Standard IP access list AC3
    10 permit 192.168.0.0, wildcard bits 0.0.3.255
Standard IP access list AC4
    10 permit 192.168.0.0, wildcard bits 0.0.7.255

show ip routeに続いてlistを指定することによりアクセスリストを指定することが可能です。作成したアクセスリストをここで指定することにより、意図したネットワークが表示されるかを確認することが出来ます。

R1#show ip route ?
  Hostname or A.B.C.D  Network to display information about or hostname
〜省略〜
  list                 IP Access list
〜省略〜

実行すると、アクセスリストのカウンター値が増えることが分かります。

R1#show ip route list AC1
O E2 192.168.0.0/24
R1#show ip access-lists AC1
Standard IP access list AC1
    10 permit 192.168.0.0, wildcard bits 0.0.0.255 (1 match)

R1#show ip route list AC2
O E2 192.168.0.0/24
O E2 192.168.1.0/24
R1#show ip access-lists AC2
Standard IP access list AC2
    10 permit 192.168.0.0, wildcard bits 0.0.1.255 (2 matches)

R1#show ip route list AC3
O E2 192.168.0.0/24
O E2 192.168.1.0/24
O E2 192.168.2.0/24
O E2 192.168.3.0/24
R1#show ip access-lists AC3
Standard IP access list AC3
    10 permit 192.168.0.0, wildcard bits 0.0.3.255 (4 matches)

R1#show ip route list AC4
O E2 192.168.4.0/24
O E2 192.168.5.0/24
O E2 192.168.6.0/24
O E2 192.168.7.0/24
O E2 192.168.0.0/24
O E2 192.168.1.0/24
O E2 192.168.2.0/24
O E2 192.168.3.0/24
R1#show ip access-lists AC4
Standard IP access list AC4
    10 permit 192.168.0.0, wildcard bits 0.0.7.255 (8 matches)

カウンターはclearコマンドでリセット可能です。

R1#clear ip access-list counters

カテゴリ:

Linux へ Dynamips をインストールする手順です。以下の作業はCentOS 5.5で行っています。プロンプトが"$"は一般ユーザ、"#"はrootユーザを意味します。

$ cat /etc/redhat-release
CentOS release 5.5 (Final)

Dynamips
http://www.ipflow.utc.fr/blog/?p=52

このサイトからDynamipsをダウンロードします。自分が利用しているCPUを確認するにはunameコマンドを利用します。

$ uname -m
x86_64

ダウンロードにはwgetコマンドが便利でしょう。

$ cd /tmp
$ wget http://www.ipflow.utc.fr/dynamips/dynamips-0.2.8-RC2-amd64.bin

ダウンロードしたファイルはバイナリでそのまま実行できますが、シンボリックを作りdynamipsで起動出来るようにすると便利でしょう。

# chmod +x dynamips-0.2.8-RC2-amd64.bin
# ls -lh dynamips-0.2.8-RC2-amd64.bin
-rwxrwxr-x 1 cisco cisco 994K Oct 14  2007 dynamips-0.2.8-RC2-amd64.bin

# cp /tmp/dynamips-0.2.8-RC2-amd64.bin /usr/local/bin
# ln -s /home/fumi/bin/dynamips-0.2.8-RC2-amd64.bin /usr/local/bin/dynamips

Dynamipsを起動時に利用するTCPポートを指定します。デュアルコアであればプロセスを2つ起動します。NICにIPアドレスを割り当てる際にはdynamipsがroot権限で実行されている必要があります。

$ dynamips -H 7200 &
$ dynamips -H 7201 &

次にDynamipsの設定を行うDynagenをダウンロードします。ソースファイル、dynagen-0.11.0.tar.gzを利用します。

Dynagen
http://sourceforge.net/projects/dyna-gen/files/

こちらも、ダウンロードにはwgetコマンドが便利でしょう。

$ cd /tmp
$ wget http://sourceforge.net/projects/dyna-gen/files/dynagen%20source%20_%20Linux/dynagen%200.11.0/dynagen-0.11.0.tar.gz/download

解凍したファイルはバイナリでそのまま実行できますが、シンボリックを作りdynagenで起動出来るようにすると便利でしょう。

# tar zxvf /tmp/dynagen-0.11.0.tar.gz -C /usr/local/src/
# chmod 755 /usr/local/src/dynagen-0.11.0/dynagen
# ls -lh /usr/local/src/dynagen-0.11.0/dynagen
-rwxr-xr-x 1 501 501 97K Apr 20  2008 /usr/local/src/dynagen-0.11.0/dynagen

# ln -s /usr/local/src/dynagen-0.11.0/dynagen /usr/local/bin/dynagen

最後にIOSを適当なディレクトリに保存し(下記では/var/cisco)、下記のような設定ファイルで起動できるか確認します。

$ cat /tmp/dynamips_test.net
[localhost:7200]

    [[3725]]
        image = /var/cisco/IOS3725.BIN
        ram = 256

    [[ROUTER R1]]
        model = 3725
        console = 2001

[localhost:7201]

    [[3725]]
        image = /var/cisco/IOS3725.BIN
        ram = 256

    [[ROUTER R2]]
        model = 3725
        console = 2002

$ dynagen /tmp/dynamips_test.net

$ telnet localhost 2001
Trying 127.0.0.1...
Connected to localhost.localdomain (127.0.0.1).
Escape character is '^]'.
Connected to Dynamips VM "R1" (ID 0, type c3725) - Console port

カテゴリ:

はじめに
残念ながら私は無駄に試験回数を重ねて、やっとのことでCCIE Lab(R&S)試験に合格することが出来ました。今後受ける皆さんが、無駄な時間とお金を使わなくていいように3回以内で受かるはずの勉強方法を書いてみます。

Blueprint
まず出題範囲を理解することが重要です。このBlueprintに書いてあることはすべて出るという前提で勉強します。Cisco Documentationからそれぞれの項目を探し出してPDF形式で保存しておくとオフラインでの勉強に役立つでしょう。Cisco Pressなどの書籍やRFCなどももちろん熟読します。

実習
おおよその知識を得たら、機材を使って学習を始めます。INEIPexpertのワークブックを使うのが一般的です。私はINEを利用したので、これ以降はINEでの話となります。

INEのワークブックはVolume 1から4までありますが、1と2があれば大丈夫です。1が各技術毎の詳細な実習、2が20のフルラボでの実習となります。そして、いきなりワークブックのVolume 2(フルラボ)を使ってはいけません、Volume 1から始めます。最初からVolume 2を使うと、それぞれの技術の理解が中途半端になります。私はこれで失敗しました。

ただ、いきなりのフルラボがどれだけ難しいかを実感するためにVolume 2, Lab 1をとりあえず試してみるのもいいかもしれません。レンタルラックを使うと準備が簡単です。私は初めて試した時にあまりの複雑さに泣きそうになりましたが、Lab 1が最もレベルが低い問題と知り絶望的になりました。このLab 1のレベルは10段階で5ですが、実際のCCIE Labはレベル7程度と感じる方が多いようです。私もレベル7と感じました。

ちなみにフルラボは初めての場合、答えを見ながらコマンドを入力しても2-3時間は軽くかかると思います。

フルラボの複雑さを理解したらVolume 1を使い、各技術(Switching, RIP, OSPFなど)を一つずつ時間をかけて理解することから始めましょう。こちらの方が結果的に時間はかからないはずです。

まず最初にスイッチから始めます。L2が正しく設定できないとルーティングやその他のものはまったく設定ができないといって過言ではありません。Catalyst実機を使い、時間をかけて繰り返し練習を行います。

その後はRIPやOSPFなどのルーティングに進みます。CCIE Labではスイッチとルーティングで100%取れないとほぼ合格はありません。基本的な技術はもらさずに理解することが重要です。

その後MulticastやMPLS、QoSへ進むわけですが、さらに恐ろしく時間がかかります…。まだこんなにも覚えることがあるのかと思うことでしょう。

Volume 1を一通り学習した後にVolume 2のフルラボに挑戦してみます。lab 20までありますが、もちろん時間の許す限り、繰り返し実習を繰り返します。Lab 20まですべて、答えを見ずに出来るようになるのが理想的です。

勉強をしているとよく分からない点が当然のことながら出てきます。この時に重要なことは、調べるときにGoogleなどの検索エンジンは使わないということ。なぜならば、試験中に検索は出来ないから…。オンライン上のドキュメントはいつもCisco Documentationからリンクを辿って調べる癖をつけましょう。Cisco Documentationは非常に複雑な構造で、理解するのに時間がかかります。普段から利用していると、試験の時にあれはどこにあるのか、ということで悩まずにすむでしょう。もちろん勉強中はCisco PressやRFCからも調べます。

対策クラスを受けてみる
独学は効率が悪いので、周りにCCIE保持者がいない場合は一度は対策クラスを受けることをお薦めします。ただ何も分からない状態で受けてはお金の無駄ですので、Volume 1を一通り勉強して、Volume 2を少し試してからがいいでしょう。普段疑問に思っていた点などをまとめて講師に質問すれば、充分に元は取れると思います(私は受けていないので希望的観測ですが)。またCCIE合格者がどのように設定を行うかということを目の前で見ると、自分のレベルがよく把握できるはずです。

トラブルシューティング対策
INEのワークブックであればVolume 4がトラブルシューティングとなります。デバグコマンドの解説がすごく役立つのですが、私はVolume 4はなくても問題ないと思います。通常の勉強時にあえてこのコマンドを入れないとどうなるか、Aと入れるべきところをBとするとどうなるかという練習を普段から繰り返すことで対応出来るようになるためです。

試験を受けるレベルを計る
自分の気分で試験を受ける日を決めてはいけません。必ず受けてもいいレベルになったことを確認してから、試験日を設定します。理解が浅い状態で試験を受けると、問題内容そのがまったく理解できずに終わる可能性が高いのです。一度試験内容がまったく理解出来ない様で、終了時間を待たずに帰ってしまった方がいました。わざわざ外国から受験のために新宿へ来たようでしたが…。

自分のレベルを計るためにはMock Labが適当でしょう。試験とまったく同じように30分の休憩を挟み、合計で8時間。CiscoDocだけを使って試してみます。これで60点程度取れれば試験を受けて問題ないレベルです。なぜ実際の合格点である80ではなく60点かというと、Mock Labは実際の試験よりも難しく、そして実際の試験まで弱点を復習できるからです。ちなみに私が最後に受けたときは58点でした。

試験を受ける
実際に試験を受け始めたら、合格するまで毎月受け続けることをお薦めします。半年など期間を置くと、試験の感覚を取り戻すことに時間を取られますのでお薦めできません。1回目、2回目の試験後にじっくり勉強が出来る時間が必要です。最低3ヶ月は仕事が忙しくない、または適宜休みを取れる期間を用意しましょう。

試験1回目
とにかく、試験問題を注意書きを含めて繰り返し読みましょう。何をしてよくて、何をしてはいけないのかをよく理解出来るようにします。各々の問題だけを見るとそれほど難しくはないのですが、それが前後の問題にどの様に関連してくるかという点が重要です。そして問題をできる限り細かい点まで記憶します。もちろん試験終了後はそのまま落ち着ける場所に移動して、記録します。

また当然のことながら試験会場の利用環境が、自分が普段行っているものと異なります。端末の設定方法等を確認しましょう。フォントのサイズなどを変更することが可能です。

結果はほとんどの場合、終了後12時間以内に届きます。セクション毎の配点を見て、何が正解でどこが間違いであったかを推測します。ひと月後の試験まで、このテスト問題をすべて解析してシミュレーションを繰り返しましょう。ちなみに合格した場合には配点比率は届きません。

試験2回目
2回目は問題をひと通り解き、1-2時間の見直し時間を持つことが目標です。もちろん問題はできる限り記憶して記録します。

そして1回目と同じように、テスト内容をすべて解析してシミュレーションを繰り返します。二度受けると凡その試験パターンが読めるようになるはずです。

試験3回目
3回目はもちろん、合格を目指します。問題をよく読んで慎重に設定を行います。とにかく一ヶ所でも間違いがあると修正に時間がかかる場合があるので、見直しの時間を計算して確実に進めましょう。

終了後はもちろん、不合格という最悪の結果に備えて問題を記録します。合格するまで気を抜かず受け続けることをお薦めします。一度休んでしまうと元に戻すのがとにかく大変なので…。

おわりに
最後になりますが、もっとも重要な事は"メゲない気持ち"だったりします。合格するまで長期間、勉強を続けるのは本当に大変なことです。集中的に時間を作り、Lab試験のための勉強開始から1年半以内くらいで合格を目指すのが望ましいでしょう。

このページのトップヘ

見出し画像
×