MENU

【YAMAHA RTX】ZOOT NATIVE 固定IPv4 1個を使う

今回はメモだけ!

ip route default gateway tunnel 1
ipv6 prefix 1 ra-prefix@lan2::/64
ip lan1 address 192.168.1.1/24
ip lan1 proxyarp on
ipv6 lan1 address ra-prefix@lan2::feed/64
ipv6 lan1 rtadv send 1 o_flag=on
ipv6 lan1 dhcp service server
switch control use lan1 on terminal=on
description lan2 IPIP
ipv6 lan2 address auto
ipv6 lan2 secure filter in 101000 101001 101002
ipv6 lan2 secure filter out 101099 dynamic 101080 101081 101082 101083 101084 101085 101098 101099
ipv6 lan2 dhcp service client ir=on

tunnel select 1
 description tunnel transix_IPv4
 tunnel encapsulation ipip
 tunnel endpoint address 2404:8e00::feed:140
 ip tunnel nat descriptor 1
 ip tunnel tcp mss limit auto
 tunnel enable 1

ip filter 500000 restrict * * * * *
nat descriptor type 1 masquerade
nat descriptor address outer 1 XXX.XXX.XXX.XXX #割り当てられた固定IPを入力
ipsec auto refresh on
ipv6 filter 101000 pass * * icmp6 * *
ipv6 filter 101001 pass * * tcp * ident
ipv6 filter 101002 pass * * udp * 546
ipv6 filter 101099 pass * * * * *
ipv6 filter dynamic 101080 * * ftp
ipv6 filter dynamic 101081 * * domain
ipv6 filter dynamic 101082 * * www
ipv6 filter dynamic 101083 * * smtp
ipv6 filter dynamic 101084 * * pop3
ipv6 filter dynamic 101085 * * submission
ipv6 filter dynamic 101098 * * tcp
ipv6 filter dynamic 101099 * * udp
tftp host 192.168.1.2
dhcp server rfc2131 compliant except remain-silent
dns host lan1
dns service recursive
dns service fallback on
dns server dhcp lan2
dns server select 500000 dhcp lan2 any .
dns private address spoof on

l2tp service on
dashboard accumulate traffic on
dashboard accumulate nat on

ipv6 lan1 prefix change log on
lan linkup send-wait-time lan2 5
schedule at 2 startup * lua hachijo_ipip_update.lua

アップデートサーバに通知をする「lua」ファイルを作成。

----------------------------------------
-- 設定値                             --
----------------------------------------
-- アップデートサーバーのURL
UPD_SV = "http://update.transix.jp/request"

-- ユーザー名
USERNAME = "xxxxxxx"

-- パスワード
PASSWORD = "xxxxxxx"

-- IPIPトンネルを貼るインターフェース名
TUNNEL_IF = "LAN1"

-- IPv6プレフィックスが追加されたときの
-- SYSLOGパターン
LOG_PTN = "Add%s+IPv6%s+prefix.+%(Lifetime%:%s+%d+%)%s+via%s+" .. TUNNEL_IF .. "%s+by"

-- リトライの間隔 (s)
RETRY_INTVL = 10

-- リトライ回数
RETRY_NUM = 3

-- SYSLOGのレベル
LOG_LEVEL = "info"

-- SYSLOGのプレフィックス
LOG_PFX = "[transix]"

-- 通知失敗時のメッセージ
FAIL_MSG = "アップデートサーバーへの通知に失敗しました。 (リトライ: 残り%d回)"


----------------------------------------
-- SYSLOGを出力する関数               --
----------------------------------------
function logger(msg)
  rt.syslog(LOG_LEVEL, string.format("%s %s", LOG_PFX, msg))
end

----------------------------------------
-- メインルーチン                     --
----------------------------------------
local rtn, count, log, result
local req_t = {}
local res_t

--------------------
-- 初期化

-- HTTPリクエストの準備
req_t.url = string.format("%s?username=%s&password=%s", UPD_SV,
                          USERNAME, PASSWORD)
req_t.method = "GET"

--------------------
-- 監視

while true do
  -- SYSLOGを監視する
  rtn = rt.syslogwatch(LOG_PTN)

  -- パターンにマッチした
  if rtn then

    -- リトライ回数をリセット
    count = RETRY_NUM

    while true do

      -- HTTPリクエストを実行
      res_t = rt.httprequest(req_t)
      
      if res_t.rtn1 then
        -- リクエストに成功
        logger("アップデートサーバーへの通知を実行しました。")

        -- アップデートの結果をログに出力する
        if res_t.code == 200 and res_t.body == "OK" then
          result = "成功"
        else
          result = "失敗"
        end

        log = string.format("アップデートに%sしました。(code=%d, body=%s)",
                            result, res_t.code, res_t.body)
        logger(log)

        -- ループを抜け、SYSLOGの監視を再開する
        break
      end

      -- リクエストに失敗
      count = count - 1
      if count > 0 then
        -- (RETRY_INTVL)秒後、リトライ
        logger(string.format(FAIL_MSG, count))
        rt.sleep(RETRY_INTVL)
      else
        -- リトライ上限を超えたので諦め、SYSLOGの監視を再開する
        logger("アップデートサーバーへの通知に失敗しました。")
        break
      end

    end
  end
end

「lua」ファイルをRTXにアップロードするには、「tftp」を使う!

cd C:\Users\Administrator\Desktop\

tftp 192.168.1.1 put update.lua /update.lua/"RTXのパスワードを入力”

どこのサイトを見てもこの方法にたどり着きます。
ただ、現在「ZOOT NATIVE 固定IPv4」のプランを契約してconfigを入れ込んでも失敗する….。


原因は不明すぎて未解決。

結局は、「ZOOT NEXT 固定IPv4」と「ZOOT NEXT」を併用して利用することに!


よかったらシェアしてね!

この記事を書いた人

目次
閉じる