ヘッダー画像

【ASUSルーター】ポートフォワーディングをコマンドで変更したい

投稿 2022年11月20日 最終更新 2022年11月20日 専門用語多め

前置き

先に言っておきます。

解決しなかったという話です。

やりたいこと

ポートフォワーディングをコマンドで変更

ルーターの管理画面から、ポートフォワーディング設定をすることはできます。

ただ、コマンドで自動化したかったので調べました。

ただ、調べてもほぼ情報は出てこないため、自分なりに調査した結果です。

結局実現できなかったので、できるようになったらまた記事にします。

確認に使用したルーター

  • ASUS
    • ROG Rapture GT-AX11000

コマンドで確認・変更

以下の管理画面の状態で行います。

ルーター設定

ポートフォワーディング設定確認

「nvram」コマンドで確認できます。

nvram get vts_rulelist
<test>80>192.168.1.1>80>TCP>1.1.1.1

設定ファイル的なところにも記載がありました。

cat /jffs/nvram/vts_rulelist
<test>80>192.168.1.1>80>TCP>1.1.1.1
cat /data/nvramdefault.txt | grep ^vts_rulelist
vts_rulelist=<test>80>192.168.1.1>80>TCP>1.1.1.1
cat /data/.kernel_nvram.setting | grep ^vts_rulelist
vts_rulelist=<test>80>192.168.1.1>80>TCP>1.1.1.1

どの確認方法でも、記載方式は統一されていました。

<サービス名>外部ポート>内部IPアドレス>内部ポート>送信プロトコル>送信元IP

ポートフォワーディング設定変更

確認に使用した「nvram」を使用しても、変更できませんでした。

nvram set vts_rulelist="<test2>80>192.168.1.2>80>TCP>2.2.2.2"

適用するコマンド?を実行しても、変更できませんでした。

nvram commit

さらに、調べている途中に出てきたコマンドを試しても、変更できませんでした。

service restart_wireless

管理画面には反映されますが、その設定が適用されていない
みたいな状態でした。

管理画面では操作後する反映されるため、
ほかに何かを実行する必要があるのかもしれません。

管理画面の動きを再現

コマンドでできないなら、管理画面でやっていることを再現すれば?

と思いさらに調べました。

動作環境

ポートフォワーディングの管理画面ドキュメントルートは以下の通りです。

/Advanced_VirtualServer_Content.asp

見た感じ、javascriptで実行していたため、
「curl」ではうまく動かせなさそう?でした。

管理画面調査

対象ファイルの絶対パスは以下の通りです。

/www/Advanced_WAN_Content.asp

<input id="saveProfile" class="button_gen" type="button" value="<#1633#>">

ボタンを押したときに実行するメソッドを抜粋

function saveProfile(_mode, _wanIdx, _rowIdx) {
  httpApi.nvramSet(obj);
}

/www/js/httpApi.js

ここからさらにajaxが実行されてます。

"nvramSet": function (postData, handler) {
  delete postData.isError;
  $.ajax({
    url: '/applyapp.cgi',
    dataType: 'json',
    data: postData,
    error: function () {
    },
    success: function (response) {
      if (handler) handler.call(response);
    }
  })
},

ただ知識不足により、「applyapp.cgi」が何なのかが・・・。

ファイル検索しても出てこないので、いったいどこにあるのか?

まとめ

ASUSルーターを解析してみました。

ほとんどやっている人はいないことを調べるのは、なかなか骨が折れます。

ですが、難しいほど楽しい!(変態)

解決には導けなかったですが、いずれ解決したいです。

以上、ここまで見ていただきありがとうございます。

皆さまの快適な開発ライフに、ほんの少しでもお役に立てれば幸いです。

コメント

この記事のコメントはありません。