見出し画像

PC用回線メモ


あれ?光回線を契約してるのにうちって何か通信が遅いかも…
って時に見る雑メモです。

はじめに

👇こちらで通信速度と応答速度(pingとjitterの値)が確認できます。

パソコンに入っているWindows PowerShellやコマンドプロンプトを使ってパケットロスの測定をすることもできます。

👇Googleへ50回ping送信 ※コマンドはエンターを押すと起動します。

ping -n 50 8.8.8.8


契約を確認しよう

インターネット回線を契約したときにPPPoEやIPoE、IPv6 over IPv4なんて表示がありませんでしたか?
IPv6が利用できる契約の場合、設定がうまくいってないときには通信の高速化が望めます。

プロバイダー(ISP)・VNE事業者

時にはプロバイダー選びも大切です。
プロバイダーごとに設備にお金を使っているかの性能差も多少はありますが、同じプロバイダー利用者が多いと通信混雑の原因にもなります。
また、プロバイダーによっては通信制限を設けているサービスもあります。

プロバイダーが契約しているVNE事業者によってIPv6の接続方式が変わります。
これにより対応するルーターなどが変わってきますので注意が必要です。

Wi-Fiルーターを確認しよう

上記によりIPv6の契約であった場合、対応したルーターでなければ最大限の性能を発揮することができません。
またルーターへの接続が有線であるか、無線であるかも重要なポイントです。
有線接続の場合、ギガビット対応のLANポートであれば高速な通信が見込めます。
無線接続の場合、現在はWi-Fi6(IEEE802.11ax)に対応したものであれば新しい通信機能を利用することができます。

LANケーブルを確認しよう

近頃のギガビット通信の家庭用LANケーブルとしておすすめなのはカテゴリー6A(Cat6A UTPタイプ)のケーブルです。※Cat7~8のものは性能は高いですが仕様上の理由で賛否両論であるため除外しておきます。
(また、安定性の面でみると2mまでのスタンダードタイプが良いみたいです。)

PCのLANを確認しよう

有線・無線に応じてWi-Fiルーターと同じくパソコン側も対応している必要があります。


(お好みで)ネットワークの設定

ここからはWindows設定へと移ります。
状況によってはもとに戻すことも考えて設定していきましょう。

NIC(インターフェースネットワークカード)を確認しよう

Windowsの設定にあるイーサネットの接続先がギガビット対応のものになっているか確認しましょう。

DNSサーバーを設定しよう

高速かつ安全性の高いDNSサーバーを2つ紹介します。
①クラウドフレア(Cloudflare)
    IPv4     IPv6
 優先 1.1.1.1    2606:4700:4700::1111
 代替 1.0.0.1    2606:4700:4700::1001
②グーグル(Google Public DNS)
    IPv4     IPv6
 優先 8.8.8.8    2001:4860:4860::8888
 代替 8.8.4.4    2001:4860:4860::8844

Windowsの設定

高性能なCPUを使っている場合、NICの代わりにCPUに処理をさせることにより通信動作が変化します。

➡ネットワークとインターネット
➡ネットワークの詳細設定
➡イーサネット(利用しているもの)
➡その他のアダプターオプション
①QoSパケットスケジューラ OFF
②Microsoft Network Adapter Multiplexor Protocol OFF
③インターネットプロトコル バージョン(TCP/IPv4) 設定変更
④インターネットプロトコル バージョン(TCP/IPv6) 設定変更
※③と④はDNSサーバーの設定、又は利用しないIPv4 ・IPv6の無効化
➡構成
➡ドライバー
①ドライバーの更新が確認できます。
➡詳細設定
①IPv4 チェックサムオフロード OFF
②TCP チェックサムオフロード(IPv4) OFF
③TCP チェックサムオフロード(IPv6) OFF
④UDP チェックサムオフロード(IPv4) OFF
⑤UDP チェックサムオフロード(IPv6) OFF
⑥WOLとシャットダウンリンク速度 速度低下ではない
⑦ウェイク・オン・パターン・マッチ OFF
⑧ウェイク・オン・マジック・パケット OFF
⑨一括送信オフロードv2(IPv4) OFF
⑩一括送信オフロードv2(IPv6) OFF
⑪速度とデュプレックス 最大値 又は 自身の利用サービスの速度

オプションとして

①受信バッファ デフォルトで問題があるなら増やす 例:512
②伝送バッファ デフォルトで問題があるなら増やす 例:512
③省電力型イーサネット 無効
④グリーンイーサネット 無効

MTUの最適化

概ね初期値は1500で設定されています。
Windows PowerShellを使いコマンドを打つことで確認できます。
※コマンドはエンターを押すと起動します。

👇IPv4インターネットを使っている場合
netsh interface ipv4 show interface

👇IPv6インターネットを使っている場合
netsh interface ipv6 show interface

主なサービスとして
 NURO光    ➡ 1500
 フレッツ光IPv6 ➡ 1460
のように回線業者によってMTUの最適値が変わるので以下のサイトを使って調べてみましょう。

https://www.speedguide.net/analyzer.php

▲上から二つ目のMTUを探しましょう。
例:1460

自身のMTU値が分かったらWindows PowerShellを管理者として実行し、起動します。先ほどの「netsh interface ipv4 show interface」のコマンドで表示されているこの画面を確認しましょう。

Idx     Met         MTU          状態                 名前
---  ----------  ----------  ------------  ---------------------------
 10          30        1500  connected     Wi-Fi
 20          50        1500  connected     イーサネット

こちらの「名前」「イーサネット」となっている行の「Idx」の数字を使います。例:20

確認ができたらMTUを設定するコマンドを打ちますが数字の部分を自身の「Idx番号」・「サイトで確認したMTUの数値」に打ち代えてください。
※コマンドはエンターを押すと起動します。

・IPv4インターネットを使っている場合  👇     👇
netsh interface ipv4 set interface 20 mtu=1460

・IPv6インターネットを使っている場合  👇     👇
netsh interface ipv6 set interface 20 mtu=1460

これでMTUの変更が完了しましたので、再度コマンドで確認することができます。

👇IPv4インターネットを使っている場合
netsh interface ipv4 show interface

👇IPv6インターネットを使っている場合
netsh interface ipv6 show interface
Idx     Met         MTU          状態                 名前
---  ----------  ----------  ------------  ---------------------------
 10          30        1500  connected     Wi-Fi
 20          50        1460  connected     イーサネット

▲例

Windows PowerShellのコマンド

高性能なパソコンの場合、通信処理をCPUに負担させ、高速化を図る方法があります。
CPU負荷が増えますので性能に合わせてご利用ください。

受信ウィンドウ自動チューニングレベルの設定
 normal              初期値
 highlyrestricted 受信ウィンドウを若干拡大 👈
 restricted           受信ウィンドウを拡大   👈
 experimental     受信ウィンドウを大きく拡大
 disabled             自動最適化を無効化

👇設定を確認する
netsh interface tcp show global

👇推奨
netsh interface tcp set global autotuninglevel=highlyrestricted

👇設定を初期値に戻す
netsh interface tcp set global autotuninglevel=normal

通信に極端な異常がある用ならこちらも試してみましょう。
Receive-Side Scaling(RSS)の無効化

👇無効化
netsh int tcp set global rss=disabled

👇戻す
netsh int tcp set global rss=enabled

設定っていうのはほんとに長くて大変な言語だと思います。
ご覧いただきありがとうございました。


いいなと思ったら応援しよう!