Scurro
May 31, 2025, 11:52pm
1
常時VPNを導入してから困った問題が発生しています。
すべて正常に動作していますが、DNSも含めて問題ありません。ただし、常時VPNはDHCPを管理しており、IPアドレスをリサイクルしやすいため、VPNのホスト名に対する古いDNSレコードがすぐに残ってしまいます。
接続していないクライアントのDNSレコードを削除するスクリプトを書きましたが、クライアントがVPNのLANアドレスを15分以内に変更することもあり、問題です。
常時VPNのリサイクル動作を無効にする方法はありますか?IPのために/16のブロックを使っていますが、クライアントは10数人しかいません。限られたIPをリサイクルするのは問題ではありませんが、同じ12のIPがクライアントの切断時に再利用されるのは問題です。
12人のユーザーのためにAOVPNを設定するなんてあなたは凄いですね。動かせたのもおめでとうございます。私はDHCPをRRASサーバーから提供せず、代わりにドメインコントローラーから提供することをお勧めします。ゾーンに対してDNSスカベンジングを設定し、Windowsに自動的に問題を解決させてください。DNS Scavenging - Everything you need to know
私たちも全く同じ問題に直面しており、Microsoft Defender for Identityのネットワーク名解決に支障をきたしています。何か回避策を見つけましたか?
Scurro
May 31, 2025, 11:52pm
4
RRASはDHCPリレーを使ってドメインコントローラーに送信しています。ドメインコントローラーがDHCPを担当します。
ただし、RRASは一度にIPをブロックごとに取得し、それをクライアントに配布します。DHCPのリースは、RRASサーバーがIPの保持者として表示され、「RAS」という一意のIDが付きます。
すでにDNSスカベンジングを有効にしており、VPNサブネット用のDNSレコードをクリーンアップするスクリプトも用意しています。
問題は、VPNクライアントが短い切断によりLAN IPを頻繁に変更することです。RRASは最後のIPを再利用せず、新しいIPを振り当てます。
Windowsクライアントは短い切断時に新しいIPをDNSに登録しようとしないようです。クライアントは5分未満で同じLAN IPを保持することもあります。
この切断は、低品質なホームWi-Fiユーザーのためのもので、安定したインターネットでは頻繁な切断は見られません。
問題は、RRASのDHCPの設定を変更できず、IPのリサイクルを短時間で行わせられないことです。
Scurro
May 31, 2025, 11:53pm
5
いいえ。最良の対策は、VPNサブネットのデバイスのDNSレコードを掃除するスクリプトを使うことだけです。
Scurro
May 31, 2025, 11:53pm
8
はい。<RegisterDNS>true</RegisterDNS>
はVPNプロファイルのXMLに設定されています。
Scurro
May 31, 2025, 11:53pm
10
<#
.SYNOPSIS
Cleans duplicate DNS records
.DESCRIPTION
Searches DNS records for duplicates on the specified subnet. Also removes unresponsive clients from DNS. Useful for VPN records that aren't scrubbed
.PARAMETER DNSSErver
DNS server hostname if running script remotely
.PARAMETER Domain
Used for looking up zone name and filtering
.PARAMETER Subnet
Search pattern for subnet. Astrisk is wildcard
.PARAMETER NoPing
By default script will also ping clients to check connectivity. If ICMP is blocked or clients aren't configured to reply, use -NoPing to skip.
.PARAMETER Jobs
This file has been truncated. show original
このスクリプトは、検索パターンに基づいてIPをチェックします。例えば-Subnet '10.20.*'
は10.20.0.0/16です。
また、pingを使って応答しないクライアントも確認します。ブロックされている場合は-NoPing
引数を使うか、応答しないクライアントのレコードを削除します。
大変ありがとうございます。気になるのですが、どのくらいの頻度でこれを実行していますか?
Scurro
May 31, 2025, 11:53pm
12
プライマリDHCPサーバーの定期タスクとしてサービスアカウントで動作し、管理者権限があります。トリガーは5分ごとです。
スクリプトに署名をして、実行ポリシーをすべて署名済みに設定しています。