1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

第三章 ファイルを安定して送るには? -SMBからFTPへ、転送方法を見直す-

1
Posted at

第三章 動画を安定して送るには? ― 転送方法を見直す

第1章では、自宅サーバーを構築し、まず最初の接続方法として SMB共有 を使いました。
SMBを使うことで、PCやスマートフォンからサーバー上のファイルをそのまま扱うことができ、
「家の中にデータの置き場所を作る」という目的は十分に達成できていました。

では、このサーバーを使って、動画も含めてもう少し便利に使うことはできるでしょうか。

実際にやってみると、いくつか気になる点が出てきました。

ここで一度、やりたいことを整理してみます。

動画まわりでやりたいことは、大きく分けると次の2つでした。

  • 動画ファイルをサーバーに送ること(転送)
  • サーバーに保存した動画を各端末で見ること(視聴)

最初はこれを、SMB共有で全部できると思っていました。
ですが実際に使ってみると、いろいろ不満な点、より改善できる点がでてきます。それに対しもっと向いている方法があるんじゃないか、ということを書いていきたいと思います。

そこで

この章(第3章)では 「写真や動画を安定して送る方法」 を整理します。
次章(第4章)では 「動画を快適に見る方法」 を扱います。

まずは、前者の「送る」側から見直していきます。

まずはSMBで送ってみる

最初に試したのは、第1章の延長そのままのやり方です。
共有フォルダを開いて、そこへ写真や動画ファイルを保存していく方法です。

このやり方はとても分かりやすく、最初の一歩としては良い方法でした。
特別なアプリを増やさなくても、すでに使えている仕組みのまま進められるからです。
「とりあえずやってみる」には、かなり自然な方法だと思います。

ただ、動画ファイルのようにサイズが大きいものを扱うと少し様子が違います。

Wi-Fi経由で転送していると、

  • 途中で止まったり
  • うまく終わらなかったり

することがありました。

設定が間違っているのか、通信環境の問題なのか、その時点では原因をはっきりとは切り分けられていませんでしたが、
「これを普段のやり方として使うには、少し不安があるな」という印象でした。

しかしこれが

  • SMBの問題なのか
  • 自宅の通信環境の問題なのか
  • たまたまなのか

正直、よく分かりません。

課題に直面したとき必要なのは、まず問題を切り分けることです。

一度、SMBとは違うやり方も試してみることにしました。

FTPを試してみる

SMBではない通信方式として使ってみたのが FTP です。

FTPとはファイルを転送するための仕組みの一種です。

広く知られた仕組みですが、正直「ファイルを送るためのものらしい」という程度の認識でした。

「まぁ、まずはやってみよう」と実際に試してみると、少なくとも自分の環境では、
SMBで送るよりもスムーズに転送できているように感じました。

この時点では

「なんとなくこっちの方が安定していそうだな」

という、かなり感覚的な理解でした。

後から理由を調べてみる

気になったので、少し調べてみました。

細かい仕組みの話はここでは深入りしませんが、ざっくり言うと、

  • SMBはファイルをその場で開いて扱うような使い方に向いていて
  • FTPはファイルを送ることに特化した仕組みのようです

第1章でやっていたように、フォルダの中をそのまま開いて使う、
という用途にはSMBはとても便利です。
一方その概念から弱点があり、ちょっとした通信の揺れにも敏感に反応して通信の安定性に影響します。

一方で、今回のように
写真や動画ファイルのような大きいデータをまとめて送るという場面では

通信にちょっとした揺れがあっても、とにかく効率的かつ確実にファイルを送る仕組みのほうが向いており、
その概念を持つのがFTPなんです。

さらにいえばSMBは細かい設定等がないため、
捉え方によってはそれが使いやすいといえば使いやすいのですが、
セキュリティ的な観点ではFTPよりも結構穴が多いのも特徴なんです。

FTPのこの概念は実際に動作を試してみたときの挙動とも、なんとなく一致します。

ここまでで、FTPを使うと安定して転送できそうだという感触がありました。

ここからは、この環境を実際に再現できるよう、自宅サーバー側でFTPを受け付ける設定を進めていきます。

FTPサーバーを立ててみる

ここから先は実践編です。自宅サーバー側でFTPを受け付けられるようにする方法を解説します。

SMBの通信では、Windows標準の機能で通信可能でしたが、FTPではそうはいきません。
パソコン側に何かしらFTPサーバーとして振る舞ってくれるアプリが必要です。

今回は FTPサーバーソフトとして FileZilla Serverというアプリを使います。
無料で使えて、個人用途では比較的とっつきやすいからです。

インストール自体はそれほど難しくなく、基本的にはそのまま進めることが出来ると思います。

しかし「入れたらすぐ使えるぞ!」…なんて話はありません。むしろ入れてからが本番です。

さて、なぜすぐに使えないのか。

それは今の状態ではFileZillaサーバー自身が「どのフォルダ」を「誰」に共有していいのか、一切設定されていないからです。

例えるなら「おまえ今から門番な!いつものやつはあっちに通しとけよ!」っていわれてるような状態です。
いつものやつって誰やねん、あっちってどっちやねん、という状態です。
image.png

そのため、FTPサーバーとして実際に使うには、

・接続していいユーザーを設定する
・アップロード先のフォルダを設定する

といった設定が必要になります。

具体的な設定については「FileZillaサーバー 構築設定」と検索していただくと解説する記事が山のようにあるため、ここでは省略させていただきます。(※気が向いたら後日追記します)

さて、「FTPサーバーとして使用するユーザーができた」「アップロード先のフォルダも指定できた」という前提で
次は、つなげられるかどうかという点を見ていきましょう。

接続してみる

設定したFTPにスマホなどから接続してみます。
たとえばiPhoneであればOwlFilesアプリやDocumentsアプリなどFTP通信が使えるアプリでつなげる、ということになります。

ただ、こちらもアプリを入れただけで終わりではありません。
そのままではアプリにとっては接続する先がわからず露頭に迷うからです。
image.png

要はアプリに対してどこにつなげればいいのか、ということを設定しないといけません。
アプリ内でFTPの設定画面を開きましょう。

さてつなげる側の設定で、FTPの接続設定に必要なのは、
基本的には次の情報です。

・サーバーのIPアドレス(ホスト)
・ポート番号
・ユーザー名
・パスワード

「サーバーのIPアドレス(ホスト)」
 第一章から読んでいただいている方はピンとくると思います。第1章では部屋番号のようなものだと説明しました。サーバーのIPアドレスを今回も設定しましょう。

「ポート番号」
 同じIPアドレスでも受け付ける通信はFTPであったりSMBであったり色々。それをサーバーは待受番号のようなもので見分けます。それがポート番号。
今回の場合はFTPですから、通常は21番です。

「ユーザ名」「パスワード」
 FileZillaサーバの設定画面のUserタブにユーザーを追加しましたか?
Filezillaの管理者メニューでアクセスを許可するユーザーを設定しているのであれば、ここにはそのユーザーのIDとパスワードを入力しましょう。

すぐにはつながらなかった

さて、繋がるでしょうか。
FTPクライアント側から接続してみましょう。

…といきたいのですが、まだ

設定は合っているはずなのに、つながらない。

表示されるのはタイムアウトという文言

実際にはこういう所で詰まることが多いと思います。

設定値があっているのになぜかつながらない、
こういうときは大体どこかで通信がブロックされています。


Windowsだとファイアウォールという、知らない通信をブロックするための機能が標準で入っています。

FTPは使用するポートが決まっているため、21番がブロックされていると接続できません。

スタートメニューから「Windows Defender ファイアウォール」を開き、「受信の規則」に
今回使用するポートを許可する設定を追加しましょう。

ちょっと取っつきづらい画面ですが、やる事さえ決まっていれば迷うことはありません。

許可する規則の追加は、右のほうに表示されている、「新しい規則」から可能です。
image.png


さて、つながりますでしょうか。

私の場合再度試してみると、PCからでも、スマートフォンからでも、
ファイルを安定して問題なく送れるようになりました。

ここでようやく、「画像や動画を送る仕組み」がひとまず形になったかと思います。

運用を少し楽にする

転送自体はできるようになり、
ようやく「サーバーらしくなった」という感覚がわいてくる頃ですが、

ただ、毎回ファイル管理アプリから、手で操作して送るのは、
使い続けることを考えると少し面倒です。

できるようになることと
続けやすいことは別の話です。

ここを改善する方法は人それぞれかと思いますが、
個人的におすすめしたいのが、 PhotoSync というアプリです。
https://www.photosync-app.com/home

これはスマートフォンの写真や動画をFTPサーバーなどに転送できるアプリで、
転送先を設定しておけば、設定以降はボタンを長押しするだけで、
まとめて送れるようになります。

実際に使っていて良かったのは、
「転送したもの」「まだ転送していないもの」という管理をアプリ側で行ってくれて、
差分だけをアップロードしてくれるため、無駄が少なく、かなり楽なところでした。

さらに今回はLAN内でサーバーに送っているので、
Googleフォトのようなクラウドへアップロードするより、圧倒的に速いです。

待たされる感覚が少なく、思ったより気軽にアップロードできます。

この章でできたこと

ここまでで、

・動画をサーバーへ送る方法としてFTPを使う
・自宅サーバー側でFTPを受け付ける
・スマートフォンからも、PCからも転送できる
・必要なら運用も楽にできる

というところまで形になりました。

最初はSMB共有の延長だけで進めようとしていましたが、
実際にやってみると、転送については別のやり方を使った方が扱いやすい場面もあることが分かりました。

この章では、その「送る」部分を整理したことになります。

ただし、これで動画まわりの話がすべて終わったわけではありません。

この章(第3章)では 「写真や動画を安定して送る方法」 を整理します。
次章(第4章)では 「動画を快適に見る方法」 を扱います。

冒頭に私は上記のように語りました。

そう、ファイルを送れるようになっても今度は
「どうやって快適に見るか」
という問題が残ります。

次章では、
今作った保存先をもとに、動画を見やすく扱うための仕組み
を作っていきます。

1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?