> 日本からアクセスしていることがわかるんでしょうか
わかります。わからなかったらサーバがデータの送り先を認識できず、ホームページなんて表示できません。
「私のIPアドレスはここよ?、このページを見たいのよ?、許可ギボンヌ」
という情報をブラウザが勝手にホームページのデータを収録しているサーバーに送って、
「閲覧許可しますん。あなたのIPアドレスにデータ送るねん」
というのが一連の流れね。
http://www.cman.jp/network/support/go_access.cgi
ここ飛んでみればわかるけど、ブラウザはこんな感じで沢山の情報を相手に送っているんです。ただデータを受け取るだけではないのよ。
Webブラウザを使ってサイトを見るときには、http というプロトコル(データのやり取りの決め事)を使います。
http では、サイトにデータを要求するときに「ヘッダ情報」というものを送ります。
ヘッダ情報は、いくつかの種類があります。
例えば、どんな OS からどんなブラウザでアクセスしてます、という User-Agent があって、サイトでは、それを見てパソコン用のページとスマホ用のページを切り替えたりします。
前置きが長くなりました。
ヘッダ情報の中に、Accept-Language という情報があります。
ブラウザが、どんな言語を表示できるか、という情報です。
サイトが国際語化(複数の言語に対応して、表示を切り替えられる)されている場合には、この Accept-Language を見て、表示を切り替えます。
例えば、ぼくが使っている環境だと、以下のような情報を送ってます。
Accept-Language: ja,en-us;q=0.7,en;q=0.3
日本語と英語に対応しているサイトの場合には、日本語で表示してくれます。
日本語には対応していないけど、複数の英語に対応しているサイトだと、アメリカの英語を優先して表示します。
「アメリカの英語」って、何なのよ、という気もしますけど、Accept-Language は、言語だけではなく、地域を判定することにも利用されます。
連絡先を表示するときに、アメリカにも、イギリスにも事務所があるような会社の場合、どちらの事務所のページを表示するか、という判定に使えたりします。
この Accept-Language は、普通は OS の情報を利用して送信されます。
一方、Webサーバの方は、よく使われるのは Apache というソフトウェア(最近だと Nginx とか)なのですが、こいつが Accept-Language ヘッダを使って、表示する HTML ファイルを切り替える機能を持っています。
なので、この機能を使って、多言語化の対応をするのが普通です。
質問にある YouTube の動画の前に広告を挟み込むのは、この機能を使っているわけではありませんが、HTML ファイルを切り替える仕組みと、同じネタ(Accept-Language)を使うのが一般的です。
例えば、フランスから日本に出張してきた人が、自分のパソコンを持ってきたとします。
日本語は何となく分かる程度なので、OS はフランス語の設定です。
ホテルに帰ってから、自分のパソコンで YouTube を楽しんでいます。
さて、広告は何語で表示されているでしょうか?
そう、フランス語で表示されます。
IP アドレスは日本からのものでも、フランス語で表示されます。
もうちょっと詳しく知りたければ、こんなところとかを見てください。
サーバ側の機能については、こんなところを。