Windowsのすべての永続的な(静的)ルートのみをクリアします


8

シェルコマンド/バッチを介してこれを行う簡単な方法はありますか?VBScriptでも問題ありません。

回答:


9

すべてのルートをクリアするには、次を使用します:

ルート-f

永続的なルートのみをクリアするには、次を使用できます

reg HKLM \ SYSTEM \ CurrentControlSet \ Services \ Tcpip \ Parameters \ PersistentRoutes / va / fを削除します
ただし、現在アクティブなルートからは削除されません。


永続的なルートがたくさんありますが、そのレジストリキーには何も表示されません。最近(Windows 10)他の場所に保存されていますか?
NickG 2018年

@NickG:わかりません。IPv4またはIPv6ルートについて話していますか?
user1686 2018年

0

以下は、レジストリから静的ルートを抽出し、route deleteそれぞれにコマンドを発行するcmdスクリプトです。

このメソッドは、永続的なルートの保存済みリストと現在アクティブなルートの両方からそれらを削除します。

@echo off
set key=HKLM\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\PersistentRoutes
for /f "tokens=1,2,3,* delims=," %%i in ('reg query %key% ^| find "REG_SZ"') do (
   route delete %%i mask %%j %%k
)

0

これは基本的なforループとして実行でき、既存および将来のルートのルートを正しくクリアできます。

(およびレジストリアイテムの確認や編集に関与することなく)検索にパイプされ、ルート削除にループされる単純なルート印刷を使用します。

FOR /F "TOKENS=1-5" %a IN ('ROUTE PRINT ^| FIND /I /V "On-Link" ^| FINDSTR /E /R /C:" *\.[0-9]*[0-9] *[0-9][0-9]*"') DO @(IF /I "%~e" EQU "" ( ROUTE DELETE %a MASK %b %c  ) )
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.