golangでルータ越えをIPv6で検討してみる [ソフトウェア]
前にGolangでUPnPを使ってルーター越えをしてみましたが、ルーター側の実装が怪しかったので現実的にやりにくいなと思っていました。結局、やられていないことは検証もされないという事で、新しいファームウェアにすればいいのかもしれないなと思いながら、今回はサンプルでコードを出すことにとどめました。できないことはないのですが、ルーターによってできたりできなかったりというのは作る方も使う方も面倒なので、実際に使っていくとしたらきついなと諦めました。
IPv4を使っているとどうしてもローカルアドレスと外部のグローバルアドレスの結び付けを考えないといけなくなって、ポートフォワーディングをせざるを得ないわけですが、IPv6を使っていればそんなこともないみたいな話を聞いたりしていたので、ちょっと調べてみることにしました。
https://internet.watch.impress.co.jp/docs/column/shimizu/1163817.html
IPv6では個別のコンピュータにもグローバルアドレスは与えられるようだ。実際Macでどうなっているのかifconfigで見てみると
と多くは伏せ字にはしたものの大体はわかってもらえると思う。サーバ目的にはautoconf securedという方を使うのかもしれない。というのもtemporaryって方は一時的に使うものだろうから、結果的にという話なんだけれども。ちなみにfe80で始まるのはたぶんローカルアドレスです、詳しく調べてないけど。
で、外部からこのアドレスに突き通せるかというと、外からいきなりじゃ無理っぽい。やっぱりルーターの設定が必要で、フィルタリングでアクセスを受け入れる設定をしないといけないみたいですね。それならUPnPでポートフォワーディングを設定するのと大して変わらないやんと思うのだけれど、まだ自動設定できる可能性のあるUPnPの方がいいという気もする。
それとブラウザでIPv6のアクセスをする場合、ローカルでも
http://[fe80::4e9:c6e2:xxxx:xxxx]/hello
みたいに[ ]で囲わないといけんみたいで面倒くさい。まぁ基本的にプロトコルが違うもんな。仕方ない。
https://www.ipentec.com/document/windows-internet-explorer-specified-ipv6-in-url
Windows Tipsって書いてあるけど、MacのFirefoxでも同様に使う事ができるみたい。
それとGolangでやろうとすると標準ライブラリというかパッケージにも組み入れられていないみたいで、まだ golang.org/x/net/ipv6 とまだ保留扱いのようである。そういう意味でも、まだ機は熟していない感じはある。
https://godoc.org/golang.org/x/net/ipv6
IoTとか言われているけども、いろいろ完全には揃っていない気はする。
何にしてもP2Pで容易に外からの通信を通すというのは難しいことみたい。確かに使わない人にとっては、アクセスを遮断してくれていた方が多分に安心できる状況ではあるから仕方ないのだけれど、もう少し自動化が望める状態になってほしいものである。でも、それをやると外部から踏み台にされるとか弊害もあるってことだよね。まぁそれは諸刃の剣っていうことなんだけど、自分で気にしてやれる分にはお気楽に設定できるようになればいいとは思う。
IPv4を使っているとどうしてもローカルアドレスと外部のグローバルアドレスの結び付けを考えないといけなくなって、ポートフォワーディングをせざるを得ないわけですが、IPv6を使っていればそんなこともないみたいな話を聞いたりしていたので、ちょっと調べてみることにしました。
https://internet.watch.impress.co.jp/docs/column/shimizu/1163817.html
IPv6では個別のコンピュータにもグローバルアドレスは与えられるようだ。実際Macでどうなっているのかifconfigで見てみると
en0: flags=8863<UP,BROADCAST,SMART,RUNNING,SIMPLEX,MULTICAST> mtu 1500 ether f0:18:98:xx:xx:xx inet6 fe80::4e9:c6e2:xxxx:xxxx%en0 prefixlen 64 secured scopeid 0x9 inet6 240f:30:f470:1:14fb:xxxx:xxxx:xxxx prefixlen 64 autoconf secured inet6 240f:30:f470:1:f1f7:xxxx:xxxx:xxxx prefixlen 64 autoconf temporary inet 192.168.xxx.xxx netmask 0xffffff00 broadcast 192.168.xxx.xxx nd6 options=201media: autoselect status: active
と多くは伏せ字にはしたものの大体はわかってもらえると思う。サーバ目的にはautoconf securedという方を使うのかもしれない。というのもtemporaryって方は一時的に使うものだろうから、結果的にという話なんだけれども。ちなみにfe80で始まるのはたぶんローカルアドレスです、詳しく調べてないけど。
で、外部からこのアドレスに突き通せるかというと、外からいきなりじゃ無理っぽい。やっぱりルーターの設定が必要で、フィルタリングでアクセスを受け入れる設定をしないといけないみたいですね。それならUPnPでポートフォワーディングを設定するのと大して変わらないやんと思うのだけれど、まだ自動設定できる可能性のあるUPnPの方がいいという気もする。
それとブラウザでIPv6のアクセスをする場合、ローカルでも
http://[fe80::4e9:c6e2:xxxx:xxxx]/hello
みたいに[ ]で囲わないといけんみたいで面倒くさい。まぁ基本的にプロトコルが違うもんな。仕方ない。
https://www.ipentec.com/document/windows-internet-explorer-specified-ipv6-in-url
Windows Tipsって書いてあるけど、MacのFirefoxでも同様に使う事ができるみたい。
それとGolangでやろうとすると標準ライブラリというかパッケージにも組み入れられていないみたいで、まだ golang.org/x/net/ipv6 とまだ保留扱いのようである。そういう意味でも、まだ機は熟していない感じはある。
https://godoc.org/golang.org/x/net/ipv6
IoTとか言われているけども、いろいろ完全には揃っていない気はする。
何にしてもP2Pで容易に外からの通信を通すというのは難しいことみたい。確かに使わない人にとっては、アクセスを遮断してくれていた方が多分に安心できる状況ではあるから仕方ないのだけれど、もう少し自動化が望める状態になってほしいものである。でも、それをやると外部から踏み台にされるとか弊害もあるってことだよね。まぁそれは諸刃の剣っていうことなんだけど、自分で気にしてやれる分にはお気楽に設定できるようになればいいとは思う。
タグ:Golang
Twitterまとめ投稿 2019/08/17 [Twitter]
carbonhydratRT @u2qKSkUcSIeBuid: 何度も言いますが、ろくに昇給もない一生手取り20万以下の雇用が溢れてる時点で日本は終わりなんですよ。どうやって結婚するの?どうやって子育てするの?どうやって老後資金貯めるの?どうやって消費増税に耐えるの? 社会問題は全て賃上げで解決です…08/16 07:00 carbonhydrat想像力の欠如が人を怒らせる……「ケーキの切れない非行少年たち」感想|にゃるら @nyalra|note(ノート) https://t.co/pMm4zrsu06 この本の題名を見て脊髄反射で叩くツイッタラーこそ読むべき本なのか。ま… https://t.co/Z64yb3cx7808/16 07:11 carbonhydratコスプレおじさんが海外に喧伝しちゃってるよ。というか最近の若者に多い右翼がかっている奴はこいつらと同レベルだと実感してほしい https://t.co/gH09M1qIBr08/16 07:15 carbonhydratRT @IshinoShahran: 久々に本気のストのニュースを見た。煽る気はないが、日本の労働者はストやらなさすぎで、ストは憲法で保障された労働者の権利だということさえ忘れられかけている気がする。 大人しすぎる労働者は、経営側に都合良いだけ。アメリカもフランスもしょっちゅう…08/16 07:15 carbonhydratRT @tukisita_EO: 非正規で苦しむ氷河期世代を本気で救う必要があると国が考えているなら、最適解は公務員の氷河期枠を作って増員することなんですよ。でも実際は研修業者に助成金渡して、対策やってますポーズ。「救う必要なし」と政官財で合意ができていることを示唆しているよう…08/16 07:16 carbonhydratRT @nasitaro: 立花孝志の前にもテレビ局に無理矢理押しかけて行って番組内容変えさせた政治家がいるんですよ。一人は中川昭一、そしてもう一人は安倍晋三という人です。08/16 07:16 carbonhydrat税別4780円で買える青軸採用コンパクトメカニカルキーボード - ITmedia PC USER https://t.co/wZwh9WA5pS 欲しいかなと思ったけれど、ドスパラだからいらねーやw08/16 11:21 carbonhydratRT @mas__yamazaki: 戦死した軍人を「命を捧げて日本を守った英霊」と称揚する行為は、次の二つの錯覚を生む。 【1】従って、彼らが尊い命を捧げた戦争は正しく、批判するのは冒涜。 【2】従って、あの戦争を指導した国家指導部も正しかった。 死者を不必要に増やした指…08/16 11:22 carbonhydrat何がスゴい?ファーウェイが発表した新OS「HarmonyOS」4つのポイント https://t.co/I9tacRNWd2 @DIME_HACKS 中華オレオレ仕様にどれだけついていくかが問題だよな。ARKについてもAppleの… https://t.co/gpLQTruJ6K08/16 11:32
2019-08-17 05:01
コメント(0)