LoginSignup
2
1

More than 1 year has passed since last update.

Softether VPNにおける音声通話サービス最適化設定

Last updated at Posted at 2021-07-30

この記事はSoftether VPNにおいてDiscord等の音声通話サービスに最適化する設定について記載されています。
すべての環境でこの動作は保証されるものでもなく、また、この記事の内容はSoftetherプロジェクト及び関連団体の公式見解ではないことにご了承ください。
なお、この記事の内容も最適化には影響しますがより効果的な方法を確立した↓の記事を設定することを推奨します。

SecureNATを無効化したSoftetherVPN server構築

環境

Server

NTT PC Communications, WebARENA indigo 
KVM Instance 1 CPU 1 GB
CentOS Stream 8 (X86_64)

サーバーマシンにはindigoというVPSを利用しています。
ここではServerはSoftether構築済みという体で解説します。
構築記事はsoftether VPNをCentos7で構築する。等を参考に構築してください。

Client

Windows 10 20H2 Build 19042.1110
Windows 11 Insider Preview (Dev) Build 22000.100

クライアントはWindows10とWindows11の2機で動作検証を行いました。
こちらも既に接続環境が構築されているものとします。

Network

サーバーマシンにはグローバルIPv4アドレスが割り振られています。
クライアントのネットワークはプロキシサーバーが稼働しており、外部向けの通信はすべてこれを経由する必要があります。
また、クライアント側にはNATが存在しますがこのNATの設定は変更せずに今回の設定を行います。

サーバー側の設定変更

サーバー側での設定を変更します。

仮想hub設定

Windowsマシンからサーバー管理ツールを起動し、対象サーバーへログインします。
image.png
左下の仮想hub拡張オプションの編集を選択します。
image.png
以下の3つの項目を編集します。

DisableUserModeSecureNAT = 1
DisableKernelModeSecureNAT = 1
DisableIpRawModeSecureNAT = 0

ローカルブリッジ設定

私が利用している方法では、SecureNAT 機能を有効にしNATによるアドレス変換とDHCPサーバー機能を比較的簡単に実現しています。
このSecureNAT 機能とローカルブリッジを併用するとスループットが低下する場合があることが知られています。(公式の機能説明ページを参考にしてください)
よって、ローカルブリッジを有効にしている場合はこの設定を削除する必要があります。
なお、こちらの記事のような方法でSoftetherの仮想NICと物理NICをブリッジ接続し、DNSを有効化することで同様の設定が行えるはずです。ですが仮想NICは物理NICと一部挙動が違う上、この設定を理解するには高度なネットワークに関する知識を必要とするため、パフォーマンスを求めていない場合は今回の方法で問題ないでしょう。

ローカルブリッジの削除

image.png
サーバー管理ツールの接続後最初の画面です。
右下のローカルブリッジ設定を選択します。
image.png
画像のようにローカルブリッジが設定されている場合は、その接続設定を選択し、ローカルブリッジの削除を実行します。
ローカルブリッジが特に設定されていない場合はこの設定は必要ありません。

クライアント側の設定変更

クライアント側での設定を変更します。

TCPコネクション数の編集

image.png

クライアント接続マネージャーを起動し、接続設定を右クリック、プロパティを選択します。
右下の通信の詳細設定VPN通信に利用するTCPコネクション数32本に設定します。
右下のOKを選択し設定を反映してください。

Discordの設定変更

音声通話サービスの設定変更手順として、今回はDiscordの設定を変更します。
この設定はアプリ版のみ動作します。ブラウザから利用している場合は公式サイトよりDiscordのクライアントソフトウェアをダウンロードしてください。

サービスの品質

image.png
Discordの設定より、アプリの設定音声・ビデオサービスの品質サービス品質向上のためパケットの優先度設定を有効にしますを有効に変更します。

オーディオのサブシステム

image.png

Discordの設定より、アプリの設定音声・ビデオオーディオのサブシステムLegacyに変更します。

以上で設定は完了です。Discordなどを実際に利用して動作を確認してください。

参考文献

Discordのオーディオのサブシステムについてのディスカッション。一部ネットワーク環境はこの設定変更で改善が見られるとのこと。私の環境もこれに該当しました。
https://www.reddit.com/r/discordapp/comments/62as33/for_those_of_you_with_troubles_having_others/

SecureNATの動作について。SecureNATはスループットの低下を招きます。ですがこの設定変更で改善が見られました。
https://ja.softether.org/4-docs/3-kb/VPNFAQ036

SecureNATによる動作不良の例
https://itkotsukotsu.hatenablog.com/entry/2020/10/13/235324

2
1
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
2
1