rabbit51

it's since Nov.30 2005
May.29 2014, transferred from broach

ヤマハNVR500のLUAでNGN経路情報取得が出来るか?

2018-06-02 09:00:00 | NVR500
「IPv6 PPPoE」インターネット接続と「ひかり電話」「NGN」サービス情報サイト接続を同時に接続するには、「NGN」経路情報取得(2.5.3.1 経路情報提供サーバ)が必要になる。
光ネクストの経路情報提供サービスとPR-S300SEで確認したがリクエストヘッダーの内容により情報取得に失敗する。

NVR500のLUAで経路情報を取得するため確認してみた。
ヤマハのIPv6対応も確認してみた。これによるとLUAは対応していないが、httpライブラリは対応しているようだ。
---------------
req_table = {
url = "http://route-info.flets-east.jp:49881/v6/route-info",
method = "GET"
}
resp_table = rt.httprequest(req_table)
print("Result - " .. testing(req_table.url) .. "¥r¥nrtn1-> " .. tostring(resp_table.rtn1) .. "¥r¥nrtn2-> " .. tostring(resp_table.rtn2) .. "¥r¥nerr-> " .. tostring(resp_table.err) .. "¥r¥ncode-> " .. tostring(resp_table.code) .. "¥r¥nheader-> " .. tostring(resp_table.header) .. "¥r¥nbody-> " .. tostring(resp_table.body) )
---------------

NVR500上でLUAスクリプトを実行してみると

幸いなことにheaderでのトラブルは無いようようだ。

NVR500のLUAによるhttp requestのheaderに何がセットされるかWireSharkでキャプチャしてみた

User-Agentがセットされていても問題無いようだ。
取得したNGNのIPv6経路情報を「rt.command()」で「ipv6 route 経路情報 gateway PR-S300SEのIPv6アドレス」を順次設定するLUAスクリプトを作成し、scheduleで毎週1回(PR-S300SEが毎週1回実行している)実行する予定。


NGN IPv6経路情報をPCで取得する

Macbook pro( macOS )
curl -H 'Host:route-info.flets-east.jp:49881' -H 'Accept:*/*' -H 'Connection:close' --http1.1 http://route-info.flets-east.jp:49881/v6/route-info




Windows(powershell)
Invoke-RestMethod -Uri http://route-info.flets-east.jp:49881/v6/route-info -Method Get -Headers @{"Host"="route-info.flets-east.jp:49881"; "Accept"="*/*"} -DisableKeepAlive
「Connection:close」をHeadersから指定して実行すると設定出来ないエラーが発生する。
「DisableKeepAlive」で指定するようだが、、、

「Connection:Close」と設定され、「Bad Request」でエラーになる。

Windows(WindowsSHell)
光ネクストの経路情報提供サービスとPR-S300SE」も再度パケットを確認してみる
---------------
Set oHttp=Wscript.CreateObject("MSXML2.XMLHTTP")
Call oHttp.Open("GET","http://route-info.flets-east.jp:49881/v6/route-info",False)
Call oHttp.setRequestHeader("Host","route-info.flets-east.jp:49881")
Call oHttp.setRequestHeader("Accept","*/*")
Call oHttp.setRequestHeader("Connection","close")
Call oHttp.send()
WScript.Echo(oHttp.status)
WScript.Echo(oHttp.responseText)
---------------
PowerShellと同様にRequestHeaderで「Connection:Close」となってしまう。指定した通りに設定してほしい。。。

コメント    この記事についてブログを書く
  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする
« ヤマハNVR500設定(かんたん... | トップ | ヤマハNVR500のLUAスクリプト... »
最新の画像もっと見る

コメントを投稿

ブログ作成者から承認されるまでコメントは反映されません。

NVR500」カテゴリの最新記事