Amazon EC2 Ubuntu 20.04 LTS (Focal Fossa)
でネットワーク初期設定がどのように設定されているのかを確認します。
本記事では以下を確認します。
Amazon VPC
内のAmazon EC2
インスタンスはAmazon DHCP
サーバと通信してIPアドレスを取得します。
またEC2はVPC作成時にネットワークアドレス+2に配置されるAmazonProvidedDNS
をフルサービスリゾルバとして使用します。
ref. デフォルト DHCP オプションセット
本記事は上記設定についてUbuntu
の設定ファイルを確認します。
Ubuntu
のネットワークはnetplan
で設定します^netplan。
設定ファイルは/etc/netplan/50-cloud-init.yaml
です。
本記事はコマンド発行結果で本記事に関係のない出力を省略します。
// Amazon EC2 Ubuntu 20.04
$ less /etc/netplan/50-cloud-init.yaml
network:
ethernets:
eth0:
dhcp4: true
dhcp6: false
match:
macaddress: 06:b5:10:xx:xx:xx // 一部の16進数をxxと置き換えています
set-name: eth0
version: 2
/etc/netplan/50-cloud-init.yaml
から以下のことが分かります。
eth0
のMACアドレスは06:b5:10:xx:xx:xx
である// eth0のMACアドレスが06:b5:10:xx:xx:xxであることを確認
// IPv4のアドレスが割り振られていることを確認
$ ip a
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
inet 127.0.0.1/8 scope host lo
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 9001 qdisc fq_codel state UP group default qlen 1000
link/ether 06:b5:10:xx:xx:xx brd ff:ff:ff:ff:ff:ff // <============ 50-cloud-init.yamlのeth0のMACアドレスと同じです
inet 10.3.0.183/24 brd 10.3.0.255 scope global dynamic eth0
ip a
から以下のことが分かります。
eth0
のIPv4のIPアドレスが10.3.0.183/24
ルートテーブルを確認します。
$ ip route
// または route -n
default via 10.3.0.1 dev eth0 proto dhcp src 10.3.0.183 metric 100
10.3.0.0/24 dev eth0 proto kernel scope link src 10.3.0.183
ルートテーブルから以下のことが分かります。
10.3.0.1
フルサービスリゾルバは、/etc/resolv.conf
で設定します。
$ less /etc/resolv.conf
nameserver 127.0.0.53
options edns0 trust-ad
search ap-northeast-1.compute.internal
フルサービスリゾルバとしてsystemd-resolved.service
が提供している127.0.0.53
を使用しています。
nslookup
でもフルサービスリゾルバとして127.0.0.53
を使用していることが分かります。
$ nslookup esample.com
nslookup example.org
Server: 127.0.0.53
Address: 127.0.0.53#53
Non-authoritative answer:
Name: example.org
Address: 93.184.216.34
Name: example.org
Address: 2606:2800:220:1:248:1893:25c8:1946
しかしVPCのフルサービスリゾルバは、VPCのネットワークアドレスに2を加えたアドレスです(10.3.0.0/16
の場合は10.3.0.2
)です。
resolvectl status
でsystemd-resolved.service
が最終的に参照するフルサービスリゾルバを確認します。10.3.0.2
が参照されています。
$ sudo resolvectl status
Global
LLMNR setting: no
...
Current DNS Server: 10.3.0.2
DNS Servers: 10.3.0.2
DNS Domain: ap-northeast-1.compute.internal