Juniper vSRXで管理用ルーティングテーブル分離(VRF)をするためのメモ
環境
- ESXi7.0 Update 3
- Juniper vSRX3.0 : 20.4R3.8
VRF
管理用のルーティングテーブルをサービスと分離させることを実現させます。
ルーティングの分離は、ルーティングインスタンス機能を使用することで実装可能です。
また、管理用のルーティングインスタンスとして、ハードウェアレベルで予約されている「mgmt_junos」を使用する必要があります。
また、独自のVRFを作成して設定することも可能です。
今回は、[mgmt_junos]を使用して設定をします。
各種設定
mgmt_junos VRFインスタンスを利用した管理系の設定では、mgmt_junosを明示的に設定する必要がある。
mgmt_junos VRFインスタンス設定
descriptionでもスタティックルーティングでも何でもいいので「mgmt_junos」を利用した設定を入れます。
例として、デフォルトゲートウェイを設定します。
set routing-instances mgmt_junos routing-options static route 0.0.0.0/0 next-hop 192.168.1.1
# ステートメントを設定
set system management-instance
# 反映
commit
※コミット後、SSHセッションが一度切れます。
【 確認 】
fxp0を利用するルーティングのみが表示される
> show route all
mgmt_junos.inet.0: 3 destinations, 3 routes (3 active, 0 holddown, 0 hidden)
+ = Active Route, - = Last Active, * = Both
0.0.0.0/0 *[Static/5] 00:01:49
> to 192.168.1.1 via fxp0.0
192.168.1.0/24 *[Direct/0] 00:01:49
> via fxp0.0
・・・
参照サイト:Management Interface in a Non-Default Instance
NTP
通常のNTP設定の最後に、「routing-instance mgmt_junos」を追加します。
set system ntp server <NTPサーバIPアドレス> prefer routing-instance mgmt_junos
set system ntp server <NTPサーバIPアドレス> routing-instance mgmt_junos
EX
NTPサーバのIPを「192.168.1.2」とする。
root@vSRX01# set system ntp server 192.168.1.2 routing-instance mgmt_junos
root@vSRX01# commit and-quit
【確認】
- show ntp status
root@vSRX01> show ntp status
associd=0 status=0614 leap_none, sync_ntp, 1 event, freq_mode,
version="ntpd 4.2.8p15-a Sun Mar 19 05:58:00 2023 (1)",
processor="amd64", system="FreeBSDJNPR-12.1-20230307.3e7c4b6_buil",
leap=00, stratum=4, precision=-24, rootdelay=53.759, rootdisp=73.349,
refid=192.168.1.2,
reftime=e82c6f90.293e31c7 Thu, Jun 8 2023 15:17:36.161,
clock=e82c6f9d.5551bd25 Thu, Jun 8 2023 15:17:49.333, peer=53911,
tc=6, mintc=3, offset=-120.288979, frequency=+0.000, sys_jitter=0.000000,
clk_jitter=55.123, clk_wander=0.000
- show ntp associations
IPの左隣にアスタリスク(*)が付いていればOK
root@vSRX01> show ntp associations
remote refid auth st t when poll reach delay offset jitter rootdelay rootdisp
=====================================================================================================================
*192.168.1.2 210.173.160.27 - 3 u 28 64 1 0.106 -118.553 1.731 53.635 52.994
- show system uptime
現在の時刻を表示する。
Time Sourceが「NTP CLOCK」となっていればNTP同期が成功しています。
root@vSRX01> show system uptime
node0:
--------------------------------------------------------------------------
Current time: 2023-06-11 07:21:19 UTC
Time Source: NTP CLOCK
System booted: 2023-06-11 06:51:18 UTC (00:30:01 ago)
Protocols started: 2023-06-11 06:53:04 UTC (00:28:15 ago)
Last configured: 2023-06-11 07:01:34 UTC (00:19:45 ago) by root
7:21AM up 30 mins, 1 users, load averages: 1.40, 1.39, 1.23
node1:
--------------------------------------------------------------------------
Current time: 2023-06-11 07:21:19 UTC
Time Source: NTP CLOCK
System booted: 2023-06-11 06:51:18 UTC (00:30:01 ago)
Last configured: 2023-06-11 07:01:33 UTC (00:19:46 ago) by root
7:21AM up 30 mins, 0 users, load averages: 1.49, 1.39, 1.23
Syslog
syslogでのルーティングインスタンス設定はファシリティやログレベルの前に、指定をします。
set system syslog host <syslogサーバIPアドレス> routing-instance mgmt_junos <ファシリティ> <ログレベル>
EX
syslogサーバIPアドレスを「192.168.1.3」とする。
set system syslog host 192.168.1.1 routing-instance mgmt_junos any any
SNMP
SNMPにはポーリングとトラップの設定が少し異なります。
そのためポーリングとトラップに、それぞれルーティングインスタンスの設定をする必要がありましす。
# 設定コマンド
set snmp community <コミュニティ名> authorization <権限>
## 権限:読み書き=read-write / 読み取り専用=read-only
# SNMPルーティングインスタンスとアクセス制限
set snmp community <コミュニティ名> routing-instance mgmt_junos clients <許可するIPアドレス>
# トラップ設定コマンド
set snmp trap-group <トラップグループ名> version <バージョン>
## バージョン1:v1 / バージョン2:v2
set snmp trap-group <トラップグループ名> targets <SNMNP管理サーバIPアドレス>
set snmp trap-group <トラップグループ名> routing-instance mgmt_junos
set snmp trap-group <トラップグループ名> categories <トラップ内容>
# ルーティングインスタンスのアクセス設定
set snmp routing-instance-access
EX
- ポーリング受信とトラップ送信対象のIPアドレスを「192.168.1.3」
- コミュニティ名:「public」
- ポーリングは読み取り専用
- トラップグループ名はコミュニティ名を使用
- トラップはVersion2を使用
# 設定コマンド
set snmp community public authorization read-only
# SNMPルーティングインスタンスとアクセス制限
set snmp community public routing-instance mgmt_junos clients 192.168.1.3/32
# トラップ設定コマンド
set snmp trap-group public version v2
set snmp trap-group public categories authentication
set snmp trap-group public categories chassis
set snmp trap-group public categories link
set snmp trap-group public categories remote-operations
set snmp trap-group public categories routing
set snmp trap-group public categories startup
set snmp trap-group public categories rmon-alarm
set snmp trap-group public categories configuration
set snmp trap-group public categories services
set snmp trap-group public categories chassis-cluster
set snmp trap-group public targets 10.77.177.1
set snmp trap-group public routing-instance mgmt_junos
# ルーティングインスタンスのアクセス設定
set snmp routing-instance-access
【確認】
- show snmp statistics
パケット数、サイレントドロップ、無効な出力値などのSNMP統計情報を表示します。
root@vSRX01> show snmp statistics
SNMP statistics:
Input:
Packets: 512, Bad versions: 0, Bad community names: 0,
Bad community uses: 0, ASN parse errors: 0,
Too bigs: 0, No such names: 0, Bad values: 0,
Read onlys: 0, General errors: 0,
Total request varbinds: 2533, Total set varbinds: 0,
Get requests: 340, Get nexts: 0, Set requests: 0,
Get responses: 0, Traps: 0,
Silent drops: 0, Proxy drops: 0, Commit pending drops: 0,
Throttle drops: 0, Duplicate request drops: 0
V3 Input:
Unknown security models: 0, Invalid messages: 0
Unknown pdu handlers: 0, Unavailable contexts: 0
Unknown contexts: 0, Unsupported security levels: 0
Not in time windows: 0, Unknown user names: 0
Unknown engine ids: 0, Wrong digests: 0, Decryption errors: 0
Output:
Packets: 528, Too bigs: 0, No such names: 0,
Bad values: 0, General errors: 0,
Get requests: 0, Get nexts: 0, Set requests: 0,
Get responses: 512, Traps: 16
Performance:
Average response time(ms): 1.13
Number of requests dispatched to subagents in last:
1 minute:2, 5 minutes:14, 15 minutes:508
Number of responses dispatched to NMS in last:
1 minute:2, 5 minutes:14, 15 minutes:508
- request snmp spoof-trap
トラップを生成することが可能です。
root@vSRX01> request snmp spoof-trap <トラップ名>
EX
リンクダウンのトラップ送信
root@vSRX01> request snmp spoof-trap linkDown
Spoof-trap request result: trap sent successfully
参考サイト:
ネットワーク管理および監視ガイド > show snmp
ネットワーク管理および監視ガイド > request snmp spoof-trap