2019年4月22日月曜日

squidでresolv.confが適用されない | ライタス株式会社

Webプロキシとして導入されている事例の多いsquid
簡単に導入でき、比較的規模の大きいネットワークでも、そこそこ捌いてくれるので、便利です。また、セキュリティの要請によって導入されることもしばしばあります。

さて、squidの名前解決でちょっとハマったので、メモをしておこうと思います。

squidはsquid.confに従って動作しますが、名前解決には2通り(正確には3通り?)あります。
よくわかっていない部分もありますが、そこは後述します。

1.resolv.conf を参照する

 デフォルトでは、OSの名前解決であるresolv.confをsquid起動時に取り込み、疎通できるDNSが1台もなければ起動に失敗します。

2.squid.conf で dns_nameserversを定義する
 resolv.confで定義されたDNS以外を参照したいというケースに対応するために、dns_nameserversというディレクティブが存在します。resolv.confに記載している内容と重複していても問題ないようなので、心配な方は記載しておくとよいかもしれません。

dns_nameserver 192.168.1.1 192.168.1.2

3.Windowsレジストリを参照する
 公式ドキュメントにも記載があるのですが、これがどうしてもわかりません。
 Webアクセスをsquid経由でWindowsプラットフォームの場合には、Windowsの設定されているDNSを参照するそうです。
 設定の状況にも寄るかと思いますが、特定条件下での挙動として念のため把握しておきたいところです


また、これら設定を変えたときは、サービスの再起動をしないと反映されないようです。
てっきり設定ファイルを変えれば即座反映されると思っていたのですが、
どうやらそうではないようなので、注意が必要です。


2019年4月19日金曜日

Ciscoでファームウェアをアップデートする | ライタス株式会社

Ciscoスイッチに限らず、ネットワーク機器のファームウェアのアップデートにはTFTPが使われるケースがあります。

TFTPでよくつかわれるのは、tftpd32 / tftpd64です。
http://tftpd32.jounin.net/tftpd32_download.html

TFTPは、PXEブートにも使えるようなので、便利ですね。
ポータブル版なら、インストール不要で動きます。それはさておき・・・

簡単に動いてしまうので、「本当にTFTPサーバーが動いているのか?」と思ってしまいますが、起動できている段階で一応動いています。


TFPTでCisco機器のファームウェアのダウンロード・アップロードをするにあたり、デフォルトの設定では、失敗します。

Settingsから、以下のように項目を変更します。

tftpd32 - > Settings -> TFTP Configurations
timeout (seconds) - 1200
Max Transmite - 100000 



https://community.cisco.com/t5/switching/copy-ios-tar-to-a-tftp-server/td-p/1447892


これで、TFTPが使えるようになったので、現行バージョンのバックアップと新バージョンの設定をやっていきたいと思います。

バックアップは、以下のようにします。
# archive upload-sw tftp://<TFTP IP>/保存先名

TFTPの指定ディレクトリにファイルが作成されると思います。

アップロードは以下のようにします。
# archive download-sw /overwrite tftp://<TFTP IP>/保存先名
もしくは、以下コマンドでウィザード的に実行できます。
# copy tftp: flash:

古いファームウェアは削除します。

# del <ファームウェア名>
ディレクトリになっている場合は、以下で消えます
# del /force /recursive <ディレクトリ名>

これで再起動すれば、新しいファームウェアで起動してきます。

# reload


2019年4月17日水曜日

Cisco Catalyst 2960でメーカーが異なる構成でVLANを構築する | ライタス株式会社

L2スイッチとしてCiscoは根強い人気ですが、ここのところ廉価版のラインナップが増えてきており、採用も増えているところですが、他社メーカーも低価格・高機能というものが増えて、選択肢が広がっています。
ネットワークは基本的には、同一メーカーでそろえていただくのが安定して構築できるので、おすすめしておりますが、要件によっては、メーカー混在環境での運用に切り替えざるを得ない場合があります。

今回は、VLAN設定でハマったので、その状況とともに、事例としてご報告したいと思います。

まず構成ですが、今回はCisco Catalyst 2960GとNetgear JGS524の組み合わせです。
Cisco Catalyst 2000番台は、基幹系でよく採用されるL2スイッチです。いろんなバリエーションがあるので、用途に合わせた購入を心がけたいですね。
Netgear JGS524はNetgearとしては、マネージドスイッチというジャンルで、L2のいろんな機能を管理画面から設定できるシリーズになります。








VLANについては、異種メーカー間で接続するためにIEEE 802.1Qという規格で通信します。通称dot1q(勝手にドットいっキューと呼んでます)で設定されていれば、基本的には通信できるはずです。
Catalyst2960シリーズは、基本的にはIEEE 802.1Qに対応しているようなのですが、たまに対応していないものがあるという記事がみられるので、選定の際は注意が必要です。(軽く見てみたら大体対応してそうでしたので杞憂かもしれません)


実際の接続の設定ですが、そこまで難しいものではありません。

Cisco Catalyst2960側設定

(config)# interface <インターフェイス名>
(config-if)# switchport trunk allowed vlan <VLAN ID> 複数の場合はカンマ区切り
(config-if)# switchport mode trunk

※この時に、spanning-treeの設定が入っているとうまくいかないことがあります。


Netgear JGS524側設定







Netgear側は、GUIで設定することになります。
VLANタブから802.1Qを指定して、拡張802.1Qを有効にしてから設定をします。
PVIDは、優先VLAN IDのようなものですが、割合っている状態でポートの設定を変えようとすると、エラーが出ます、

上記までは、他のサイトにも記載があるので、問題ないかと思っていたら、上記設定でうまくいかない状況に陥りました。
Cisco VLANがrunning-configに表示されないということで、VLAN IDの定義をさぼっていたため通信ができないという、ありがちだけど忘れやすい原因でした。
https://www.cisco.com/c/ja_jp/support/docs/lan-switching/vtp/98155-tshoot-vlan.html#topic2

対処としては、# show interface trunkコマンドでポートにvlanが設定されているかを確認して、定義されてなければ、

(config)# vlan 10

という感じでvlanを定義すればよいです。