スキップしてメイン コンテンツに移動

28 Crostini のIPアドレスの謎

こんにちは!!本記事はリテラシーの低い文系の私jirowが、IPアドレスの扱いに混乱したという内容になっています。

「IPアドレスの扱いがわからんねん!」
で終わります。どうぞさいごまでごらんください
.
.


IPアドレスの何が謎か?

同じネットワークに存在しているデバイス同士って、pingとかで通信したりとか、例えばSambaサーバーを立てたら、そのサーバーのプライベートIPアドレスを宛先にすれば通信しあってファイルの共有ってできるじゃないですか?

グローバルIPアドレスとかプライベートIPアドレスの区別があって、その範囲はきまっていて・・・・、って理解に難しいことはななかったはずなんですが・・・・。現在以下に直面しております
  • Crostini(ChromeOS/ChromiumOSで動くLinuxコンテナ。LXC)で稼働中のWebサーバーに、コンテナホストOS以外のデバイスからLAN経由でアクセスってできないの?
  • Crostiniで動くDebianへ付与されるIPアドレスは、 100.115.92.xとクラスAのグローバルIPアドレス
  • グローバルIPアドレスな100.115.92.xにアクセスするにはどうすればいいの?
といったもの。この100.115.92.xの扱いがよくわらかない



Crostiniに付与されるIPアドレスは100.115.92.x

Crostiniで動くDebianにてIPアドレスを確認するためにシェルで以下を実行
hostname -I  
100.115.92.196   

100.115.92.196というのが確認できる。そこでpythonでWebサーバー(ポート番号8001)を立てて、
python -m SimpleHTTPServer 8001  


CrostiniのホストOSであるChromiumOS(CloudReady)からpenguin.linux.test:8001にアクセスすると以下のように、コンテナDebianで起動しているWebサーバーにアクセスでき、ページが以下のように表示される
enter image description here
 ※index.htmlは、https://aperitif.io/で作成

localhost的なのはpenguin.linux.testなので、ホストOSであるChromeiumOSのブラウザからpenguin.linux.test:8001でコンテナのWebサーバーへアクセス可能になっています。この100.115.92.196はグローバルIPアドレスだし、ここで文系としては考えるわけですよ、
.

「じゃあ100.115.92.196:8001へ、スマホのChromeからアクセスすれば、同じようにWebページが表示されるはずだよね?」

Crostiniが動いてるのはノートパソコンなので、同じLANに属しているAndroidスマホのChromeから同様に100.115.92.196:8001へアクセスしても、ページはちゃんと表示されるはずだよなぁ、ってことでやってみた結果


enter image description here

えぇぇぇなんでだろう。。

だってね、反対にね、スマホで立てたWebサーバーには、同LANに属するスマホ以外のデバイスからアクセスできるんだもの。なんでCrostiniだとできないのよ
.
.
.

Androidアプリで建てたWebサーバーには、LAN経由で他機種からアクセスできる謎

SimpleHttpServerというAndroidアプリを使うと、スマホで簡単にローカルなWebサーバーが建てられる。このWebサーバーにはLANからアクセスしてindex.htmlを表示することができる。ほわい

AndroidスマホでSimpleHttpServerを起動し、アプリ内でWebサーバーへアクセスするために用意されたIPアドレスは、
  1. 192.168.2.223:12345
  2. 153.140.47.252:12345
  3. 172.11.218.218:12345
の3つ。

スマホで起動中のSimpleHttpServerへアクセスするために、ノートパソコンから192.168.2.223:12345へアクセスしてみると
enter image description here
表示できる

自室LANのネットワークアドレスが、192.168.2.0/24だから192.168.2.223はAndroidスマホのIPアドレスだ。192.168.2.223:12345 はWebサーバーを起動しているスマホのIPアドレスだから、ダイナミックポート12345でリッスンしているのは直感的にすぐわかる。

「じゃああとの2つ、
153.140.47.252:12345 と、
172.11.218.218:12345 
はなんなんだよ」

ということになってしまう。どちらも
  • クラスB (128.0.0.0 ~ 191.255.255.255)
のIPアドレスだけどプライベートIPアドレス(172.16.0.0~172.31.255.255)ではない。自室LAN内に存在する機器のIPアドレスではない

.
「LAN(192.168.2.0)にクラスBのIPアドレスが存在しているってなによ。どういう状況なのよ」
と、すでに私の理解を超えている状況。2つ目のIPアドレスである153.140.47.252:12345へノートパソコンからアクセスしてみると、

enter image description here
アクセスできる。なんでだぁぁぁぁぁぁぁぁ
.
.
.


CrostiniのIPアドレスがグローバルでも関係ないんじゃない

「AndroidのSimpleHttpServerアプリでは153.140.47.252:12345というグローバルIPアドレスでもLANの他デバイスからアクセスできたんだから」
「同様にCrostiniで起動中のウェブサーバー100.115.92.196:8001へも、ホストOS以外からでもアクセスできるだろう」

と類推。結果は
enter image description here
orz
.

うーーん。多分、サーバーを起動しているOSでフォワーディング的なことをやっているんだと思うんだけどなぁ・・ 。名前解決の問題なのか?IPアドレスの所在をどうやって確認しているんだろう。わからん。なにを調べればいいんだろうか・・・・
諦めた猫









さいごまでお読みいただきありがとうございました

当ブログは、ChromebookやLinuxなITライフスタイル記事を投稿しています。コンテンツの柱は、ChromebookでVimmerLVを上げる、ChromeBookでWEBプログラミング、シェルスクリプトLVを上げる、となっております



ChromebookでVimmerになる

実践VIMという書籍を読んで「うわキーバインディングすげぇ」と感動したのが、Vimmerを目指しはじめたきっかけ。Vimは古のテキストエディタ。VimLVをあげればテキスト編集をより効率的に行えるようになるでしょう

メインテキストエディタをVIMに矯正し、実践VIMを読み進め、Vimmerになるまでの道のりを記事にしています
ChromeBookでVimmerになる 記事一覧


実践Vimおすすめです!


ChromebookでWebプログラミング

Chromebookを買ったはいいけど、Blog更新・ネット閲覧くらいしかやることがない!  Aという目的のためにBという手段を用いるとは逆で、当ブログではChromeBookを買ったからChromeBookでなにかできることはないか!?  と思って初めたのがWEBプログラミング(ここまで前置きが長い!) html cssはもういいのでJSの学習をすすめています

ChromeBookでWebプログラミング 記事一覧


シェルスクリプトLVを上げる

シェルスクリプトって覚える文法が少なめなのにLinuxでいろいろできるのが楽しい!
断捨離ブームに乗り書籍250冊近くをimageMagicとBashで自前電子化したのがシェルスクリプトが好きになったきっかけ  >> 250冊の自前電子化した経緯とか

ちょっとずつですが、シェルスクリプトの記述の幅が広がってる段階。レベルを上げシェルスクリプトLV50前後を目指しています
シェルスクリプトLVをあげる 記事一覧



おすすめのChromebook

私が使用しているのはASUS ChromebookFlip101pa 980g と軽量でCrostiniやPlayStoreも動く おすすめです

コメント

このブログの人気の投稿

AndroidのChrome(stable)で水平スワイプ(エッジジェスチャ)による履歴の戻る・進むができる


追記1:2020/02/02 Google検索から当ブログへ来られた方へ ”android chrome ジェスチャー 進む 戻る”、”android chrome Swipe 進む 戻る”、”overscroll history navigation”といった検索ワードで当ブログへ来られた方へ、お読みいただきありがとうございます。
記事の内容となっている、水平スワイプによる履歴の進む・戻る機能は、AndroidのChrome Ver. 80より廃止予定となっています。記事公開当時はchrome://flagを有効にするだけで使用できる機能でしたが、Chromeのアップデートにより使用不能になっている可能性があります。 参考URL: 廃止される前に試したい、Google Chrome最新版の隠し機能4選 | ライフハッカー[日本版] 参考URL: Chrome Beta 80 removes experimental Reader Mode and gesture navigation, deprecates FTP support, and more


追記1: 2020/07/12 現在 水平スワイプによる履歴進む・戻るの機能はまだ使用できてます。使用できなくなるっていう情報はなんだったの!?



記事冒頭にて追記でごちゃごちゃして申し訳ありませんが、それでは記事本編をどうぞ IOSでChromebookで可能な水平スワイプジェスチャによる、履歴の戻る・進む。何故かAndroidのChromeではこのジェスチャができない。最近(2019/07/09現在)chrome://flagsの項目をenableにするだけで、履歴ジェスチャが可能になっている模様。AndroidのChrome(Stable)で履歴の戻る・進むジェスチャーを有効にする方法、を紹介します。
.
.
.
.
#overscroll-history-navigation をenable にするだけChromeのURL欄に chrome://flags/#overscroll-history-navigation と入力Enableに変更Chromeの再起動



これでOK




ジェスチャによる履歴操作が便利なのは、進むとき。

Chromeの右上の3本の横線をタップしないと進むボタンはでてこないので、ジェスチャによる進…

日本語配列キーボードをステッカーで英語配列にする。ダイソー製品でステッカーを自作

メインPCをChromeOS/ChromiumOSにしてしまおうというこのブログ。メインPCのChromeBookFlipで色々事足りていたのですが、最近になってBlenderやInkscapeなど創作系のアプリが使いたくなってきました。ってことで中古のノートパソコンを5500円で入手しました。2010年製ThinkPad。




本記事ではAmazonを探せばだいたい1000円以下で手に入るキートップシールを Linuxを使用し、Daisoにあるもので格安で作ってみよう!という内容になっております。買わないであえて作ることのメリットは・・・・?というと、うん、まぁ好きならGOという感じです。どうぞご覧ください


キーボードステッカー作成の前に、デスク周辺晒し
こんなんになりました。モニターアームのマウンタを自作し、ディスプレイを目線の高さまで上げています。これの目的は猫背改善。マウンタなど詳細は以下でどうぞ! 猫背は習慣から。ディスプレイを目線の高さにして疲れづらいデスク環境をつくる leaves2min.blogspot.com




猫背改善デスクの残念な点:USB外付けキーボードが日本語配列なこと

ノートパソコンは空中に浮いているので外付けUSBキーボードをつなげています。古いノートPCだけど性能に不満はありません。けど、困っていることは
「ChromeBookが英字配列でそっちに慣れてしまったので日本語配列キーがつかいづらい!!」 ということ!記号の位置とか!英語配列のほうが使いやすいねん!!思い通りにタイプできないのってかなりストレス。ってことでキートップシールをDaisoで販売されているもので自作することにしました。ここまでお読みいただきありがとうございます。





総額216円。Daiso製ラミネートシートを素材にする シール印刷用紙透明ラミネートシートを使用し、作業工程は以下のようになっています。素材となる画像ファイルを用意(もしくは作成)し印刷する印刷したキー画像を、カットしてキーへ貼り付ける貼り付けたキートップに保護シートとしてラミネートシートを貼る


デジタルデータはInkscapeで作ろうかなと思っていたところ、" us key rayout " で検索したらWikipediaにちょうどいいものがありました。
British and American …

28 CloudReady 2ヶ月使用レビュー

.
.
.
CloudReady Home ver 2ヶ月 使用レビュー 書きなぐり
CloudReadyをインストールしたのは、LenovoThinkPad E530(メルカリにて送料込み5500円にて入手)
メモリ: 4GBCPU: Core™ i3-2348M
•バグったりフリーズしたりが一切なくとっても安定している。ChromeBookとほぼ同じ使用感。flip所有してます

•VirtualboxやFlatpakやCrostiniなどのコンテナー系のアプリを起動していると、タスクバーの挙動がおかしくなる。
アイコンがバグってタスクの切り替え、スタートメニューボタンが使用不能になる。バグだと思われる。Crostiniは何回か再起動を繰り返すといつのまにかこの症状がなくなっている

• インストール直後くらいにGauth2認証を行うウェブサービスでGoogleアカウントにログインができないことがあった。 広告ブロッカをオフにしたりしてみたけどNG。しかし、いつのまにかログインできていた。ウェブサービスの推奨環境がChromeだけで、ChromiumOS(Chromiumブラウザ)に対応していないとかが問題なのかも。

CrostiniからGoogleドライブを操作できない。 これできるようになってほしい。 GoogleドライブのファイルをCrostini(Linux)アプリで扱いたいときは、ファイラーのGoogleDriveからLinux領域に当該ファイルをダウンロードしてローカルに保存しないといけない

•Linuxでのxfce4デスクトップのようにオートログインはできない。ChromiumOSのディスプレイマネージャがオートログインに対応していない。
Androidとのリンク機能SmartLockは、CloudReadyでは使えない。Googleのライセンス起因。CloudReadyは未対応。

•CloudReadyのMozcは、全/半など細かい設定ができない。 IMEの設定項目が少ない。日本語入力のとき、記号の全角半角を設定できないのが悲しい

•メジャーなPCだからといってCloudReadyが使えるかはわからない。例えばMacBookAir2018ではトラックパッドやキーボードが使用不能らしい。Trackpad, keyboard and wifi…