0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

OpenWrt 22.03 23.05 FW4 ニチバン対策 全自動構成 旧版

Last updated at Posted at 2023-07-23

移行しました

はじめに

初心者対応構成

  • スクリプトでの自動設定
  • UCIとLuCi及びWinSCPにて比較しながら作業がおススメ

PowerShellSSHアクセス

ssh root@192.168.1.1
ssh root@192.168.1.1のショートカット作成(デスクトップ)
powershell
$DESKTOP = ([Environment]::GetFolderPath("Desktop") + "\192.168.1.1.lnk")
$WshShell = New-Object -comObject WScript.Shell
$Shortcut = $WshShell.CreateShortcut("$DESKTOP")
$Shortcut.TargetPath = "C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe"
$Shortcut.Arguments = '-windowstyle hidden -ExecutionPolicy RemoteSigned "Start-Process ssh root@192.168.1.1"'
$Shortcut.IconLocation = "C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe,0"
$Shortcut.WorkingDirectory = "."
$Shortcut.Save()

  • 強制的に貼り付け
  • yes

SSHログイン出来ない場合:exclamation:

known_hostsクリア

  • C:\Users\yourusername\.ssh\known_hosts ※Windows隠しファイル
powershell
Clear-Content .ssh\known_hosts -Force


OpenSSHのインストール
※Windows 10 Fall Creators Update(1709)以降標準搭載

  • 機能の確認
powershell
Get-WindowsCapability -Online | Where-Object Name -like 'OpenSSH*'

  • 機能のインストール
powershell
Add-WindowsCapability -Online -Name OpenSSH.Server~~~~0.0.1.0


対応回線

  • 対応回線 : OCNバーチャルコネクト / V6プラス
  • 対応ファームウェア : 22.03 以降 ※FW4 (firewall4)
  • スクリプト : []( / map-e / all-ports-set
  • パッケージ : node @ JavaScriptをデバイスで動かす
  • 必要フラッシュ容量 : 12 MiB 以上 @ node
  • 動作確認 : 23.05.0-rc2 @ WXR-5950AX12
  • 設定詳細 : 参考サイト

ニチバン対策

使い方

  • powershell > Win+X > a > はい
  • コードブロック(黒の枠)内記述は右上Copied!でpowershellにコピー&ペースト
  • #(コメントアウト)のままコピー&ペースト

高度なカスタム構成 ※要ONU直結

自動設定

# package
opkg update
opkg install node

# config-softwire
wget --no-check-certificate -O /lib/netifd/proto/map-e.js https://raw.githubusercontent.com/site-u2023/config-softwire/main/map-e.js

# map-e
cp /lib/netifd/proto/map.sh /lib/netifd/proto/map.sh.bak
wget --no-check-certificate -O /lib/netifd/proto/map.sh https://raw.githubusercontent.com/site-u2023/map-e/main/map.sh.new

# scripts
. /lib/functions/network.sh
network_flush_cache
network_find_wan6 NET_IF6
network_get_ipaddr6 NET_ADDR6 "${NET_IF6}"
NODE_RET=$(node /lib/netifd/proto/map-e.js "$NET_ADDR6")
eval "$NODE_RET"

# map
sed -i -e "s/ip4prefixlen=32/ip4prefixlen=${option_ip4prefixlen}/g" /lib/netifd/proto/map.sh

reboot

レストア

  • map
cp /lib/netifd/proto/map.sh.bak /lib/netifd/proto/map.sh
rm /lib/netifd/proto/map.sh.bak

MAP-E のポートセット全部使う ※ 要ONU直結

スクリプト選択

map使う版
wget --no-check-certificate -O /etc/mape_setup_rule.sh https://raw.githubusercontent.com/site-u2023/all-ports-set/main/use_mape_setup_rule.sh
chmod +x /etc/mape_setup_rule.sh

map使わない版
wget --no-check-certificate -O /etc/mape_setup_rule.sh https://raw.githubusercontent.com/site-u2023/all-ports-set/main/dont_mape_setup_rule.sh
chmod +x /etc/mape_setup_rule.sh

OCNバーチャルコネクト設定@自動設定

# package
opkg update
opkg install node

# config-softwire
wget --no-check-certificate -O /lib/netifd/proto/map-e.js https://raw.githubusercontent.com/site-u2023/config-softwire/main/map-e.js

# scripts
. /lib/functions/network.sh
network_flush_cache
network_find_wan NET_IF
network_find_wan6 NET_IF6
network_get_ipaddr6 NET_ADDR6 "${NET_IF6}"
network_get_device NET_L3D "${NET_IF}"
NODE_RET=$(node /lib/netifd/proto/map-e.js "$NET_ADDR6")
eval "$NODE_RET"

sed -i -e "s/IPv4_IPv4/IPv4=${IPv4}/g" /etc/mape_setup_rule.sh
sed -i -e "s/TUNDEV_TUNDEV/TUNDEV=${NET_L3D}/g" /etc/mape_setup_rule.sh
sed -i -e "s/PSID_PSID/PSID=${PSID}/g" /etc/mape_setup_rule.sh
sed -i -e "s/PREFIX_PREFIX/PREFIX=1024/g" /etc/mape_setup_rule.sh
sed -i -e "s/BLOCKS_BLOCKS/BLOCKS=63/g" /etc/mape_setup_rule.sh

cp /lib/netifd/proto/map.sh.bak /lib/netifd/proto/map.sh
sed -i -e "s/ip4prefixlen=32/ip4prefixlen=${option_ip4prefixlen}/g" /lib/netifd/proto/map.sh
sed -i -e "s/mtu:-1280/mtu:-1460/g" /lib/netifd/proto/map.sh

cp /etc/rc.local /etc/rc.local.bak
sed -i -e "s/exit 0//g" /etc/rc.local
echo "/etc/mape_setup_rule.sh" >> /etc/rc.local 
echo "exit 0" >> /etc/rc.local

reboot

V6プラス & IPv6オプション設定@自動設定

# package
opkg update
opkg install node

# config-softwire
wget --no-check-certificate -O /lib/netifd/proto/map-e.js https://raw.githubusercontent.com/site-u2023/config-softwire/main/map-e.js

# scripts
. /lib/functions/network.sh
network_flush_cache
network_find_wan NET_IF
network_find_wan6 NET_IF6
network_get_ipaddr6 NET_ADDR6 "${NET_IF6}"
network_get_device NET_L3D "${NET_IF}"
NODE_RET=$(node /lib/netifd/proto/map-e.js "$NET_ADDR6")
eval "$NODE_RET"

sed -i -e "s/IPv4_IPv4/IPv4=${IPv4}/g" /etc/mape_setup_rule.sh
sed -i -e "s/TUNDEV_TUNDEV/TUNDEV=${NET_L3D}/g" /etc/mape_setup_rule.sh
sed -i -e "s/PSID_PSID/PSID=${PSID}/g" /etc/mape_setup_rule.sh
sed -i -e "s/PREFIX_PREFIX/PREFIX=4096/g" /etc/mape_setup_rule.sh
sed -i -e "s/BLOCKS_BLOCKS/BLOCKS=15/g" /etc/mape_setup_rule.sh

cp /lib/netifd/proto/map.sh.bak /lib/netifd/proto/map.sh
sed -i -e "s/ip4prefixlen=32/ip4prefixlen=${option_ip4prefixlen}/g" /lib/netifd/proto/map.sh
sed -i -e "s/mtu:-1280/mtu:-1460/g" /lib/netifd/proto/map.sh

cp /etc/rc.local /etc/rc.local.bak
sed -i -e "s/exit 0//g" /etc/rc.local
echo "/etc/mape_setup_rule.sh" >> /etc/rc.local 
echo "exit 0" >> /etc/rc.local

reboot

レストア

  • all-ports-set
  • map
# all-ports-set
sed -i -e "s/^.*mape_setup_rule.sh//g" /etc/rc.local
rm /etc/mape_setup_rule.sh

# map
cp /lib/netifd/proto/map.sh.bak /lib/netifd/proto/map.sh
rm /lib/netifd/proto/map.sh.bak

確認

ポート動作確認

利用可能ポート番号確認

. /lib/functions/network.sh
network_flush_cache
network_find_wan6 NET_IF6
network_get_ipaddr6 NET_ADDR6 "${NET_IF6}"
NODE_RET=$(node /lib/netifd/proto/map-e.js "${NET_ADDR6}")
eval "$NODE_RET"
echo "${PORT}"

リムーブ

リムーブ

  • node
  • config-softwire
# node
opkg remove node

# config-softwire
rm /lib/netifd/proto/map-e.js

トラブルシュート

# prefix確認
echo ${PREFIX}

# node確認
ls /usr/lib/opkg/info/node*

参考サイト(感謝:relaxed:)

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?