| サイズ: 5052 コメント:  | サイズ: 5383 コメント:  | 
| 削除された箇所はこのように表示されます。 | 追加された箇所はこのように表示されます。 | 
| 行 34: | 行 34: | 
| * FreeBSDが認識可能な2ポートNIC搭載機 | * FreeBSDが認識可能な2ポートNIC搭載機([[https://www.links.co.jp/item/liva-z-n4200/|ECS LIVA Z-4]]を使用) | 
| 行 37: | 行 37: | 
| * NIC設定 * NIC1: DHCPによりIPアドレス自動設定 * NIC2: 10.0.0.0/8 を割り当て、静的設定 | |
| 行 39: | 行 42: | 
| * [[https://www.freshports.org/ftp/tftp-hpa|tftp-hpa 5.2]] | * TFTP [[https://www.freshports.org/ftp/tftp-hpa|tftp-hpa]] 5.2 | 
| 行 44: | 行 47: | 
| * [[https://www.freshports.org/net/isc-dhcp44-server|isc-dhcpd 4.4.1]] | * DHCPサーバー [[https://www.freshports.org/net/isc-dhcp44-server|isc-dhcpd]] 4.4.1 | 
| 行 46: | 行 49: | 
| * [[https://www.freshports.org/comms/kermit|kermit 9.0.304]] | * Kermit [[https://www.freshports.org/comms/kermit|kermit]] 9.0.304 | 
| 行 75: | 行 78: | 
| access-control: 10.0.0.0/8 allow_snoop | 
ネットワーク機器メンテナンスサーバー
ネットワーク機器のメンテナンスを行う際には、Windows上でtftpd64を運用するのが定番ではある。 しかし以下の点で使い勝手が悪く、この問題を解決するためにFreeBSDで構成してみることにしてみた。
- NIC(ネットワークインターフェース)をアプリ(tftpd64)とOS(Windows)が奪い合うことによる不安定さ。
- tftpd64自体の不安定さ。
- 全体的にトラブルシューティングのしにくさ(パケットキャプチャーするのに別アプリのインストールなど)。
- ターミナルアプリの選択が必要で、かならずしも自身が使い慣れたターミナルアプリ*だけ*で完結するわけではない、など。
目次
設定目標
ネットワーク機器をメンテナンスするための、前述の不満を解消するために、以下の機能を必要and/or用意した。
- 2ポートNIC構成。ただしNIC自身はUSBイーサーでは構成せず。 - 経験的に、マルチキャスト関連の処理で不安定になる経験が多々あったため、USBイーサーの使用はお勧めしない。
 
- 2つのNICの用途は、以下の通りである - ポート1: 外部接続用ポートで内部(ポート2)の通信を外部と通信する時にNATする。 - ダイナミックNAT(IPマスカレード)を想定し、1対1NATは行わない。
 
- ポート2: 内部(ネットワーク機器)接続用ポートでこのポートに対して以下のサービスを提供する。 - スパニングツリー(RSPAN)
- DHCP
- リゾルバ(DNSキャッシュ)
- NTP
- Syslog
- TFTP
 
 
- ポート1: 外部接続用ポートで内部(ポート2)の通信を外部と通信する時にNATする。 
- またネットワーク機器に対するクライアントツールとして以下のツールを使用する。 - SSH
- TFTP
- シリアル通信
 
構築環境
- ハードウェア - FreeBSDが認識可能な2ポートNIC搭載機(ECS LIVA Z-4を使用) 
 
- OS - FreeBSD(12.0-R)
 
- NIC設定 - NIC1: DHCPによりIPアドレス自動設定
- NIC2: 10.0.0.0/8 を割り当て、静的設定
 
- クライアント・サーバー共通 - SSH 7.8p1
- TFTP tftp-hpa 5.2 
 
- サーバーアプリケーション - Syslogサーバー syslogd
- DNSキャッシュサーバー local-unbound 1.8.1
- NTPサーバー ntpd 4.2.8p12-a (1)
- DHCPサーバー isc-dhcpd 4.4.1 
 
- クライアントツール - Kermit kermit 9.0.304 
 
セットアップ
local-unbound
- /etc/rc.conf に対して設定の追加。
- local_unbound のセットアップ。
- 必須ではないが /etc/resolv.conf の確認(nameserver 127.0.0.1 の追加の確認)。
- /etc/unbound/conf.d/local.conf ファイルを作成する。
上記作業完了後に local_unbound を立ち上げる。
/etc/rc.conf
local_unbound_enable="YES"
local_unbound のセットアップ
service local_unbound setup
/etc/unbound/conf.d/local.conf
server: interface: 0.0.0.0 access-control: 127.0.0.0/8 allow_snoop access-control: 10.0.0.0/8 allow_snoop
※環境に合わせてinterface, access-control 行の追加または削除を実施すること。
local_unbound の立ち上げ
service local_unbound start
※なお再起動により、自動的に立ち上がる。
ntpd
- /etc/rc.conf に対して設定の追加。
- /etc/ntp.conf に対して設定の修正。
上記作業完了後に ntpd を立ち上げる。
/etc/rc.conf
ntpd_enable="YES" ntpd_flags="-N -p /var/run/ntpd.pid -f /var/db/ntpd.drift" ntpd_sync_on_start="YES"
/etc/ntp.conf
   1 --- /etc/ntp.conf.orig  2018-08-16 19:07:30.542265000 +0900
   2 +++ /etc/ntp.conf       2018-08-16 14:33:41.609429000 +0900
   3 @@ -29,7 +29,7 @@
   4  #
   5  # The option `iburst' is used for faster initial synchronization.
   6  #
   7 -pool 0.freebsd.pool.ntp.org iburst
   8 +pool ntp.nict.jp iburst                # NICT
   9 
  10  #
  11  # If you want to pick yourself which country's public NTP server
  12 @@ -97,6 +97,8 @@
  13  #
  14  #server 127.127.1.0
  15  #fudge 127.127.1.0 stratum 10
  16 +server 127.127.1.0
  17 +fudge 127.127.1.0 stratum 10
  18 
  19  # See http://support.ntp.org/bin/view/Support/ConfiguringNTP#Section_6.14.
  20  # for documentation regarding leapfile. Updates to the file can be obtained
※ここではNICTのNTPサーバーを指名している。環境に応じて修正すること。
syslogd
isc-dhcpd
tftp-hpa
