IRR をwhoisで引いたり pevalする¶
インストール¶
IRRToolsetを入れます。aptなどはありません。
source指定の重要さ:こんなことになる¶
あるIRRサーバは他のIRRサーバのエントリをミラーしていることが多いです。(上記のIRRサーバは相互をミラーします) ただし、この同期は非同期です。このため、見に行くIRRサーバとSOURCEにより状態が異なることがあります。
peval -h rr.ntt.net -s NTTCOM AS290
({202.17.220.0/23, 130.128.0.0/15, 45.0.0.0/16})
peval -h rr.ntt.net -s RADB AS290
({192.16.170.0/24})
whoisでのクエリの仕方¶
AS-SHOWNETのASMembers = AS-SETを確認したい¶
whois -h whois.radb.net AS-SHOWNET
# or whois -h rr.ntt.net AS-SHOWNET
> as-set: AS-SHOWNET
> members: AS290, AS131154
などで、AS-SHOWNETという名前で2つのAS-SETが含まれていることがわかります。 このシナリオはSHOWNETという団体が、ASを2つ持っているケースです。
あるAS-SETに含まれる経路を確認したい¶
whois -h rr.ntt.net \!oMAINT-AS290
...
route: 202.17.220.0/23
...
route6:2001:3e8:0::/32
など。Route-Objectが見えます。適当にgrep route:などしてパースするとエントリだけを抜き出せます。
あるAS-SETに含まれる経路を確認したい(IPv4とIPv6)¶
と上記のように頑張りましたが、実は、”!g”でクエリするともう少し楽です。
whois -h rr.ntt.net \!gAS290
A86
202.17.220.0/23 45.0.0.0/15 130.129.0.0/16 130.128.0.0/15 45.0.0.0/16 192.16.170.0/24
whois -h rr.ntt.net \!6AS290
A66
2001:df8::/32 2001:418:1c05::/48 2620:102:f000::/46 2001:3e8::/32
とある経路はどのAS-SETに含まれているの?¶
whois -h rr.ntt.net 2001:0418:1c05::/48 | egrep '(^route|origin)'
route6: 2001:418::/32
origin: AS2914
route6: 2001:418::/32
origin: AS2914
route6: 2001:418::/32
origin: AS2914
route6: 2001:418:1c00::/38
origin: AS2914
route6: 2001:418:1c05::/48
origin: AS290
peval¶
ある子のAS-memberの経路をIPv4,IPv6全部取る¶
peval -h rr.ntt.net -s NTTCOM 'afi ipv6,ipv4 AS-SHOWNET'
({202.17.220.0/23, 130.128.0.0/15, 45.0.0.0/16}) OR ({2001:418:1c05::/48, 2001:3e8::/32})
あるAS-SETの経路を見る(IPv4のみ)¶
標準ではIPv4の経路しかQueryされません。
peval -h rr.ntt.net AS290
({202.17.220.0/23, 130.128.0.0/15, 130.129.0.0/16, 45.0.0.0/15})
peval -h rr.ntt.net AS131154
NOT ANY
SOURCEの指定¶
IRRはmirrorしあっているため、RADBにSource: NTTCOMのIRRもmirrorされています。
peval -h whois.radb.net -s NTTCOM AS290
などします。