記事
IPv4とIPv6の違い:アドレス、デュアルスタック、互換性
IPv4とIPv6は、どちらも現在のインターネットで使われているインターネットプロトコルの2つのバージョンです。IPv4アドレスの長さは32ビット、IPv6アドレスは128ビットです。IPv6のアドレス空間が広いからといって、接続が自動的に速くなったり安全になったりするわけではありません。性能や外部への露出は、経路、ネットワーク、設定によって決まります。
IPv6プライバシーアドレス:アドレスが変わる理由
一時IPv6アドレスとは、送信方向の接続に使われる追加の端末アドレスです。時間とともに変わるため、1つの固定された端末識別子によって、アクセスを横断的に結びつけることが難しくなります。ただし、この仕組みによって利用者が匿名になるわけではなく、ネットワークに割り当てられたアドレスのプレフィックスが変わるとも限りません。
IPv6リンクローカルアドレスとは
IPv6のリンクローカルアドレスは、ホストがローカルネットワーク、近隣の機器、他のネットワークへの経路をどう判断するかとあわせて考えると理解しやすくなります。IPv4ではアドレス、プレフィックス長、ゲートウェイが、IPv6ではそれに加えてアドレスのスコープと近隣探索(Neighbor Discovery)が関わってきます。値がひとつ違うだけで、ローカルの通信は問題なくできるのにサブネットの外にはつながらない、という状態になることがあります。
IPアドレスが169.254で始まるのはなぜ?
IPアドレスが169.254で始まっている場合は、ホストが自分の属するローカルネットワーク、近隣の機器、他のネットワークへの経路をどう判断しているかを確認しましょう。IPv4ではアドレス、プレフィックス長、ゲートウェイが、IPv6ではそれに加えてアドレスのスコープと近隣探索(Neighbor Discovery)が関わってきます。値がひとつ違うだけで、ローカルの通信は問題なくできるのにサブネットの外にはつながらない、という状態になることがあります。
IPアドレスとは?IPv4、IPv6とプライベートネットワーク
IPアドレスは、パケットを宛先に届けるために、IPネットワーク上のインターフェースを識別するものです。あくまでネットワーク上のアドレスであり、個人はもちろん、特定の機器を恒久的に示すものでもありません。1台のコンピューターが同時に複数のアドレスを持つこともあれば、接続が変わるとアドレスも変わることがあります。
IPウィジェットとプライバシーに配慮した埋め込み
IPウィジェットを埋め込むと、iframeやJavaScript、ネットワークリクエスト、キャッシュ、ログといった、ページの依存関係が増えます。Webサイトに埋め込むスピードテストやIPウィジェットは、HTTPS/CSPとの互換性、パフォーマンスバジェット、可用性、そして第三者から見える技術的なデータの観点から評価する必要があります。
IPジオロケーションの精度はどのくらい?
IPジオロケーションとは、ネットワークのアドレスを国、地域、都市、プロバイダーとおおまかに結びつけるものです。精度はデータベースと接続の種類によって変わります。位置情報の結果は個人の座標ではなく、その人が物理的にどこにいるかの証明にもなりません。
IPとは?IPv4、IPv6とパケットのルーティング
インターネットプロトコル(IP)は、IPアドレスを使ってネットワーク間でパケットを運ぶ仕組みです。現在、IPv4は32ビット、IPv6は128ビットのアドレスを使っています。IPが担うのはアドレス指定とルーティングで、IP自体はすべてのパケットが届くことも、順番どおりに届くことも、中身が保護されることも約束しません。必要な機能は、ほかのプロトコルやアプリケーションが補います。
IPフラグメンテーションと経路MTU
IPフラグメンテーションと経路MTUは、トランスポート層やネットワークの経路上でのパケット配送にかかわる問題です。ローカルのソケット、IPによる配送、TCPやUDPの動作、ファイアウォールによるフィルタリング、NATは切り分けて考えましょう。pingが通ってもTCPポートに到達できるとは限りませんし、ポートが開いていてもアプリケーションのプロトコルが正常に動いているとは限りません。
JSON APIとXML APIの違い
JSONとXMLのどちらを選ぶかも、クライアントとAPIの間の契約にかかわる問題です。クライアントは、成功、バリデーションエラー、認証の失敗、レート制限、一時的なサーバーエラーを区別して扱う必要があります。JSONかXMLかでHTTPのセマンティクスが変わることはありません。また、IPv4/IPv6の値は、IPv4の長さを前提にせず、そのまま保持しなければなりません。
Linuxのchmodパーミッションの基本
Linuxのchmodによるパーミッションは、一般的なネットワークのトラブルシューティングとしてではなく、正確なルールや単位、ビット表現から見たほうがずっとわかりやすくなります。計算を始める前に、何を測るのか、入力の単位は何か、どのような形式で結果を出すのかをはっきりさせておきましょう。
localhostとは?ループバック、127.0.0.1と::1
localhostは通常、リクエストを送っているマシン自身を指します。よく知られたアドレスは、IPv4の127.0.0.1とIPv6の::1です。これらへの通信は、家庭用ルーターを経由してインターネットに出ていくのではなく、そのマシンのネットワークスタックの中で処理されます。そのため、localhostでのテストでわかるのは「サービスがローカルで動くかどうか」という限られた点だけです。
MACアドレスとは?
MACアドレスは、ネットワークインターフェースがデータリンク層で使う識別子です。イーサネットやWi-Fiでは一般に48ビットのアドレスが使われ、通常は2桁の16進数を6組並べて表示します。このアドレスは、ローカルネットワーク上で機器同士がフレームをやり取りするのに使われます。ネットワークをまたいだ通信を支えるIPアドレスとは別物です。
MACアドレスのベンダー検索の仕組み
MACアドレスのベンダー検索では、ネットワークインターフェースのMACアドレス、つまりローカルの有線LANやWi-Fiのリンク上で使われる識別子を調べます。端末のMACアドレスが、恒久的なグローバル識別子としてインターネット上を運ばれることはありません。ルーターは、ローカルセグメントごとにそれぞれ適したリンク層アドレスを使います。
MACアドレスのランダム化
MACアドレスのランダム化とは、ネットワークインターフェースのMACアドレス、つまりローカルの有線LANやWi-Fiのリンク上で使われる識別子を変更する仕組みです。端末のMACアドレスが、恒久的なグローバル識別子としてインターネット上を運ばれることはありません。ルーターは、ローカルセグメントごとにそれぞれ適したリンク層アドレスを使います。
MbpsとMB/sの違い:通信速度の正しい換算方法
インターネット回線の速度は、一般にMbpsまたはMb/sと書くメガビット毎秒で表示されます。一方、ファイルサイズやダウンロードソフトでは、メガバイトやMB/sがよく使われます。1バイトは8ビットなので、プロトコルのオーバーヘッドを考える以前に、数値には約8倍の差が出ます。
MTUとは?パケットサイズと経路上の問題を解説
MTUとは、あるインターフェースやリンクが、その層で分割せずに送れるネットワークパケットの最大サイズです。イーサネットでは1500バイトが一般的ですが、トンネルなどのリンクではそれより小さいこともあります。通信は、実際に通る経路の制限の範囲内で成り立たなければなりません。
NATとは?家庭用ルーターとポートフォワーディング
NAT(ネットワークアドレス変換)は、ネットワークの境界でパケットのアドレスを書き換える仕組みです。家庭のネットワークでは、プライベートアドレスを持つ複数のIPv4端末が、ルーターを通じて1つの外部IPv4アドレスを使うのが一般的です。同時に行われる複数の接続を区別するため、ポート番号も書き換えることがよくあります。
nslookupの使い方:DNSレコードの確認とトラブルシューティング
nslookupは、ドメインやIPアドレスについてDNSサーバーに問い合わせるためのコマンドラインツールです。名前解決の問題なのか、Webサイトやメールサービスの問題なのかを切り分けるのに役立ちます。返ってくる応答は選んだリゾルバーとそのキャッシュに左右されるため、権威DNSサーバーから直接得た答えとは限りません。
NXDOMAIN・SERVFAIL・REFUSEDの違い
NXDOMAIN、SERVFAIL、REFUSEDといったDNSエラーは、スタブリゾルバー → フルリゾルバー → 委任 → 権威DNSサーバーという経路に沿って読み解きます。フルリゾルバーはキャッシュから応答することがあるため、ユーザーが受け取った応答が権威DNSサーバーから直接取得されたものとは限りません。TTL、レコードタイプ、応答コードを見れば、その結果がどこから来たのか、いつまで有効なのかがわかります。
open・closed・filteredの違い:ポートチェック結果の読み方
ポートチェックが示すのは、ある場所から1回接続を試みたときにどう見えたか、という結果です。「open」「closed」「filtered」は診断に役立つラベルですが、1回の結果だけでは、経路上のすべての機器を特定することも、アプリケーションが安全かどうかを判断することもできません。
pingの急上昇とレイテンシの不安定さ
pingの急上昇やレイテンシの不安定さは、Mbpsの数字ひとつでは評価できません。スループット、レイテンシ、ジッター、パケットロスはそれぞれ別の特性を表しており、Wi-Fiか有線LANか、同時に通信している機器、VPN、ルーティング、テストサーバーのどれもが結果を左右します。スループットが高くても、負荷がかかるとレイテンシが悪化していることもあります。
pingの見方:遅延、パケットロス、ICMP
pingは、宛先がネットワークのプローブに応答するかを確かめ、それぞれの応答が返ってくるまでの時間を測るツールです。最初の診断手順として便利ですが、ダウンロードの帯域幅は測れませんし、pingだけでアプリケーションやWebサイトが正常に動いていると判断することもできません。
Punycodeと国際化ドメイン名
Punycodeと国際化ドメイン名については、機密性、完全性、認証、紐付けされにくさのうち、どの特性を確認したいのかを明確にしておきましょう。仕組みが違えば、解決できる問題も違います。暗号化はハッシュ化とは別物ですし、VPNはアプリケーションのプロキシと同じではありません。外から見える識別子を変えたところで、完全な匿名性が得られるわけでもありません。
Punycodeと国際化ドメイン名の仕組み
Punycodeは、国際化ドメイン名でUnicodeの文字をASCII互換の形式で表すためのエンコード方式です。そのため、各国の文字で書かれたドメインが、技術的なデータの中ではxn--で始まるラベルとして表示されることがあります。エンコードによって変わるのは表現形式だけで、Webサイトが本物であることを証明するものではありません。