複数プロバイダ同時接続機能のための追加コマンド
複数プロバイダ同時接続機能のために以下のようなコマンドを追加する。
DNS問い合わせに応じたDNSサーバの選択
[コマンド形式]
dns server select ID SERVER [TYPE] QUERY [ORIGINAL-QUERIER]
dns server select ID pp PP_NUM [TYPE] QUERY [ORIGINAL-QUERIER]
dns server select delete ID
[パラメータ]
ID ... DNSサーバ選択テーブルの番号
SERVER ... DNSサーバのIPアドレス
PP_NUM ...
IPCPにより接続相手から通知されるDNSサーバを使う場合の接続相手先番号
TYPE ... DNSレコードタイプ
TYPEはa, ptr, mx, ns, cnameのいずれか。省略した場合には'a'として扱う
QUERY ... DNS問い合わせの内容で以下のいずれかとなる。
TYPEがa,mx,ns,cnameのいずれかの場合 ... QUERYはドメイン名を表す文字列
ドメイン名は後方一致とする。
例えば、"yamaha.co.jp"であれば、comm.yamaha.co.jp、
rtpro.yamaha.co.jpなどにマッチする。
TYPEがptrの場合 ... QUERYはIPアドレス ( IP_ADDRESS[/MASKLEN] )
MASKLENを省略すると指定したIPアドレスにだけマッチし、
MASKLENが指定されている場合にはそのネットワークアドレスに含まれるすべてのIPアドレスにマッチする。
DNS問い合わせに含まれる.in-addr.arpaドメインで記述されたFQDNをIPアドレスに変換してから比較される。
ORIGINAL-QUERIER ... DNS問い合わせ元のIPアドレスの範囲
DNS問い合わせ元が指定したIPアドレスの範囲に含まれる場合のみ、
DNSサーバが選択される。
省略した場合はDNS問い合わせ元の制限は行なわれない
[説明]
DNSの問い合わせを行なうDNSサーバとして、
DNS問い合わせの内容とDNSサーバとの組合せを複数登録しておき、
実際のDNS問い合わせの内容に応じてその組合せから適切なDNSサーバを選択できるようにする。
テーブルは若番順に検索され、
DNS問い合わせの内容にQUERYがマッチしたらそのDNSサーバを用いてDNS問い合わせを解決しようとする。
テーブルのそれ以降の検索は行われない。
すべてのテーブルを検索してマッチするものがなかったら、
dns serverコマンドで指定されたDNSサーバが用いられる。
静的DNSレコード
[コマンド形式]
ip host FQDN VALUE
ip host delete FQDN
dns static TYPE NAME VALUE
dns static delete TYPE NAME
[パラメータ]
TYPE ... 名前のタイプ、a, ptr, mx, ns, cname
NAME, VALUE ... DNSテーブルの中身、タイプによって意味は変る
a: NAMEはFQDN、VALUEはIPアドレス
ptr: NAMEはIPアドレスもしくは.in-addr.arpa型のFQDN、VALUEはFQDN
mx,ns,cname: NAME、VALUEともにFQDN
[説明]
静的なDNSレコードを定義する。
ip host コマンドは、dns staticコマンドでaとptrを両方設定することの簡略型である。
[ノート]
問い合わせに対して返されるDNSレコードは以下のような特徴を持つ。
TTLフィールドには1がセットされる
Answerセクションに回答となるDNSレコードが1つセットされるだけで、
Authority/AdditionalセクションにDNSレコードはセットされない
MXレコードのpreferrenceフィールドは0にセットされる
表示コマンド
[コマンド形式]
show ip host
show dns static
[パラメータ]
なし
[説明]
静的なDNSレコードを表示する。
ip routeコマンド
[コマンド形式]
ip route IPADDRESS[/MASKLEN] GATEWAY-LIST
ip route delete IPADDRESS[/MASKLEN]
[パラメータ]
IPADDRESS[/MASKLEN] ... 宛先ネットワークアドレス
MASKLENが省略された場合にはホスト経路(MASKLEN = 32)として扱う
GATEWAY-LIST ... ゲートウェイリスト、以下のような記述に従う
GATEWAY-LIST
::=
GATEWAY-DESCRIPTOR | GATEWAY-DESCRIPTOR GATEWAY-LIST
GATEWAY-DESCRIPTOR
::=
gateway GATEWAY [filter FNUM] [metric METRIC] [hide]
GATEWAY
::=
IPADDESS
| pp PP_NUM [dlci=DLCI_NUM]
| pp anonymous name=NAME
| tunnel TUNNEL_NUM
IPADDRESS ... IPアドレス
出力インタフェースは、
各インタフェースの自己IPアドレスとネットマスクやInARPの情報などから推測する
pp PP_NUM [dlci=DLCI_NUM] ... PPインタフェース直接
PP_NUM ... PP番号、1〜30/100, 'leased', 'anonymous'
DLCI_NUM ... DLCI番号、PPインタフェースがFRの場合
pp anonymous name=NAME ... 名前によるルーティング
tunnel TUNNEL_NUM ... トンネルインタフェース直接
TUNNEL_NUM ... トンネル番号、1〜10/20
metric METRIC ... メトリックの指定
METRIC ... メトリック値、1〜15、省略時は1
hide ...
出力インタフェースがPPインタフェースの場合にのみ有効なオプションで、
回線がつながっている時だけ経路が有効となることを意味する
filter FNUM ... フィルタ型経路の指定、
FNUMはフィルタ番号で空白で区切って複数指定できる
[説明]
IPの静的経路を設定する。
filterが指定されているGATEWAYが記述されている場合には、
記述されている順にフィルタを適用していき、
マッチしたゲートウェイが選択される。
マッチするゲートウェイが存在しない場合や、
filterが指定されているゲートウェイが一つも記述されていない場合には、
filterが指定されていないゲートウェイが選択される。
filterが指定されていないゲートウェイも存在しない場合には、
その経路は存在しないものとして処理が継続される。
filterが指定されていないゲートウェイが複数記述された場合で、
それらの経路を使うべき時にどちらを使うかは、
ラウンドロビンにより決定される。
いずれの場合でも、
hideが指定されているゲートウェイは回線がつながっている時だけ有効で、
回線がつながっていない時には評価されない。
設定例
ホストによって接続先を変える場合
ip lan address 192.168.0.254/24
ip filter 1 pass 192.168.0.1 * * * *
ip filter 2 pass 192.168.0.2 * * * *
ip route default gateway pp 1 filter 1 gateway pp 2 filter 2
注意事項
IPアドレスを固定するためにDHCPは使えない
RTの持つDNSリカーシブサーバ機能は使えない
プロトコルによって接続先を変える場合
ip filter 1 pass * * tcp * smtp,pop3
ip filter 2 pass * * tcp * www
ip route default gateway pp 1 filter 1 gateway pp 2 filter 2 gateway pp 3
dns server select 1 pp 1 mx .
dns server select 2 pp 1 a mail-server.
dns server select 3 pp 1 a pop-server.
dns server select 4 pp 2 a www.server
dns server pp 3
注意事項
発呼の原因になるパケットはDNS問い合わせであると予想できるので、
DNS問い合わせを適切な相手先に振る必要がある
プロトコルによって接続先を変えるが、現在接続中であればそれを優先する場合
ip route default gateway pp 1 hide gateway pp 2 hide gateway pp 3 hide
dns server select 1 pp 1 mx .
dns server select 2 pp 1 a mail-server.
dns server select 3 pp 1 a pop-server.
dns server select 4 pp 2 a www.server
dns server pp 3
注意事項
DNS問い合わせでないと発呼できないため、自動切断は行なわない方が無難
DNS問い合わせを適切な相手先に振る必要がある
手動発呼で相手先を選択する場合
ip route default gateway pp 1 hide gateway pp 2 hide
注意事項
手動発呼した相手先にdefaultが向く
自動発呼はできない