AWS 基礎からのネットワーク&サーバー構築
これをやっていく
ネットワーク機器は 192.168.1.1 ~ から埋めていく事が多いらしい
それ以外の接続したいデバイスは 192.168.1.100 とか ネットワーク機器と重複しなさそうな位置からおいておく
.0
がたしかネットワーク全体だった気がする
CIDR表記 192.168.1.0/24
(ネットワーク部が24ビットであることを示す)
サブネットマスク表記 192.168.1.0/255.255.255.0
これらは同値
ルーティングテーブルを設定することで、
ある宛先
に贈りたいなら どのルータ
にわたすべきかが定まるため、うまく少ないホップ数でたどりつく
デスティネーション: ターゲット
で指定される。
IPアドレスAがデスティネーション(贈りたい先) であれば、
デバイス機器Bがターゲットになる
netstat -rn
でルーティングテーブルを見られる
AWS VPC では、VPC領域全体にインターネットゲートウェイが置かれる(内部ではNAT-GWを使うことが多いらしい)
各サブネットには、ルートテーブル(ルーティングテーブル)がある。
また、VPCにはルーターが一つ内部で動いており、各サブネットとやり取りする
0.0.0.0/0
はすべてのIPアドレス範囲を表す。これをルーティングテーブルに設定すると、転送先リストに一致しないものがあったらとりあえず 0.0.0.0
に一致したとして、そのデフォルトの送り先に転送してしまおうというもの。
よって、デスティネーション 0.0.0.0/0
ターゲット awsのインターネットゲートウェイ
とすると、外部に通信を飛ばせるようになる
ここの指すターゲットの local
とは vpc 領域内の ルータを指している
EC2 で自動割当パブリックIP を指定すると、 ランダムにパブリックIPが配布される。
固定したい場合は、Elastip IPを作ってあとで紐付けよう
SSH ができるのは 接続先サーバーのデーモンで sshd プロセスが実行されているため
基本的に22 port を開けて接続先サーバは待ち構えている
ロケール locale
は アプリの時刻や言語を表現するもの。
LANG=ja_JP.UTF-8
は基本""で囲まれておらず、これは環境変数であるため。
LC_ALL
が設定されていると、この値が最優先で利用される。
よって、一時的に英語ロケールでプログラムを実行したいときは export LC_ALL=C
とすることがある
httpd は デーモンとして動く Web 系サーバプログラムのことをさすが、基本 Apache (yum だと httpd という名前でも公開されているし...)
セキュリティグループはEC2に紐付けられており、これにTCPを追加することで
Apache が入っていて 80番ポートで受け付けてるWebサーバ
に 80 番で実際にアクセスできるようになる
nslookup domain名
でどこのサーバにDNSを問い合わせているのかがわかる
VPC内のプライベートネットワークに接続したい場合は、パブリックネットワークに一度 SSH してから、その後プライベートネットワークにある EC2 に対して SSH すればいい(知ってはいたが、実際に踏み台するのは初めて)
鍵を共有しているので、ここらへんはそのうちもっと勉強したほうがよい
MariaDB などのミドルウェアを起動すると 複数のデータベース
を建てられる。
wordpress
, blog
など。
そして、各データベースのなかに、複数のテーブルを作成できる
grant all on wordpress.* to wordpress@"%" identified by 'wordpresspasswd';
wordpress
というユーザを作っている、このとき権限もついでに指定している。
wordpress.*
は wordpressというデータベースに含まれるすべてのテーブルを指す。
そして、wordpress@"%"
は wordpress
というユーザを作ることを表す。
また、 "%"
がすべてのホストからの接続を許すことを表す
mysql などは ホスト名を ドメイン名や 192....
のようなネットワークアドレスを指定することで接続でいる(ただし、DBデーモンが起動している受け入れサーバ側で、外部からのホスト接続を許可する必要がある)
tar コマンドがやっていることは複数のファイルをまとめるだけ。 (アーカイブファイルを作る)
それを圧縮するのであれば gzip などを使う。
tar + gzip が zip コマンドのイメージ
工事完了です...
ARPプロトコルは、 IP アドレスと MAC アドレスの対応付けを行う。
この ARP はルータを超えることができない(つまり、VPC やサブネット内だけで、MACアドレスを参照する)
参照付を行うことで、192.168.132.21
であれば ホストIDがfd::f34::...
に送ればいい!ということを理解できる。
- トランスポート層
- UDPやTCPなどの種類とポート番号
- インターネット層
- 送信先、送信元IPアドレス
- データ長
- データリンク層
- 送信先、送信元MACアドレス