インストーラーは実行され、ウィンドウが開き、サインインのプロンプトが表示されるので、移行は完了したように見えます。しかし、クライアントが仮想アダプターを必要とする時点でトンネルは失敗し、エラーは資格情報ではなくサービスやドライバーに言及します。Arm 版 Windows では、互換性のルールがユーザーモードのコードとカーネルモードのコードで変わるため、この順序がよく起こります。ノート PC を承認するには、最初の確認ではなく二番目の確認が必要です。

パッケージ全体のアーキテクチャを尋ね、実際のマシンで確認してください。

エミュレーションがカバーしない部分

Arm 版 Windows は、ユーザーモードにとどまる限り、エミュレーションで x86 と x64 のアプリケーションを実行できます。カーネルモードのコンポーネントはその扱いを受けず、ドライバーはそもそも読み込まれるために Arm64 向けにビルドされている必要があります。Microsoft はこの境界を文書化しており、VPN クライアントは、多くが仮想ネットワークアダプターやフィルタードライバーをインストールするため、まさにそこに位置することが多いのです。

つまり、パッケージは動作するインターフェースを見せながら、使えないことがあります。障害は、アダプターの欠落、起動しないサービス、決して確立しないトンネルとして現れます。パイロットはここで止めるべきです。サインイン画面は、データ経路が機能している証拠ではありません。

移行を決める三つの条件

一つ目はパッケージです。x64 ビルドと Arm64 ビルドはどちらも 64 ビットと呼ばれ、互換性がないため、単に Windows 64 ビットとだけ書かれたダウンロードは、Arm デバイスについて何も証明しません。そのアーキテクチャ向けにベンダーがサポートするインストーラーだけが、唯一許容できる出発点です。

二つ目は、残りの必須コンポーネントです。デバイスポスチャチェック、ブラウザーベースの認証ヘルパー、スマートカードのミドルウェアには、それぞれ独自のアーキテクチャ要件がある場合があり、トンネルだけの成功は組織のアクセスポリシーが満たされたことを示しません。

三つ目はゲートウェイと、それがサポートするクライアントの集合です。承認済みのクライアントに Arm ビルドがない場合、別のクライアントが許容されるのは、ゲートウェイの所有者がそのクライアントのプロトコル、認証方式、ポリシーの動作をサポートしている場合だけです。Windows に組み込まれた VPN プロファイルは、どちらも IPsec と呼ばれているという理由だけで独自クライアントの代わりにはなりません。

デバイス上でアーキテクチャを確認する

マシンが何であるかを確認し、パッケージが実際にどのドライバーをインストールしたかを見てください。列挙には一分かかりますが、"64-bit" の意味をめぐる議論を防げます。

Get-CimInstance Win32_OperatingSystem | Select-Object OSArchitecture
$env:PROCESSOR_ARCHITECTURE
pnputil /enum-drivers | Select-String -Pattern 'vpn|tap|wintun' -Context 0,3
Get-NetAdapter | Format-Table Name,InterfaceDescription,DriverProvider

アダプターの一覧にクライアントの項目がない場合、またはドライバーのエントリがアーキテクチャの不一致を報告する場合、移行はそこで止まります。Arm64 ドライバーを古いコンテナーに入れることはベンダーがサポートする操作ではなく、互換モードの設定で x64 カーネルドライバーが変換されることもありません。

インストールされたバージョンを、ベンダーが Arm についてサポートする一覧と比較し、インストーラーがベンダーではなく社内リポジトリから来た場合はその違いを記録してください。

サインイン画面ではなく、ワークロードを承認する

以前に動作していたデバイスをフォールバックとして利用できる状態で、パイロットを実行してください。プロファイルのプロビジョニング、想定された ID、デバイスチェックを確認し、トンネルの状態だけでなく実際のプライベートアプリケーションを試してください。

プライベート DNS、必要なルートとアドレスファミリー、ネットワーク変更後の再接続、指定された切断状態を含めてください。クライアントとコンポーネントのバージョンは、次の更新でも同じ質問をされるため、結果とともに記録してください。

最後に、このプラットフォームにサポートされた更新と削除の経路があることを確認してください。文書化されていない置き換えの後にしか動作しないパッケージは、次のリリースで同じ移行問題を生み、解決の時間はさらに短くなります。

関連記事