静的IPを使用してインターネットに接続しようとしていますが、Sudo netplan apply
コマンドを入力すると、コンソールから次のエラーが返されます。
Invalid YAML at //etc/netplan/01-netcfg.yaml line 8 column 5: did not find expected key.
これを修正するには?私の01-netcfg.yaml
の内容は次のようになります。
network:
version: 2
renderer: networkd
ethernets:
enp0s3:
dhcp4: no
dhcp6: no
addresses: [10.0.2.15/64]
gateway4: 10.0.2.0
nameservers:
addresses: [8.8.8.8,8.8.4.4]
そのため、発生している特定のエラーに関して、基本的なYAML構文とインデントに失敗しました。これが、netplan
が不満を述べている理由の1つです。 YAMLは非常にインデント指向であり、コマンドや構成引数などを解釈する方法が異なります。YAML構成を解析するには、適切なインデントが必要です。驚いたことに、あなたはそれをまったく行っておらず、YAML構文を壊しています。適切なYAMLを提供していないため、netplan
が文句を言うのはそのためです。
しかし、Netplanを機能させるYAML構文よりももっと重要なことでも重大なエラーが発生しますあなたのネットワーク構成で、そしてあなたは本当に関係なくこれらを修正する必要があります。これらの障害は、具体的には次のとおりです。
10.0.2.15/64
は有効なIPv4 CIDR範囲ではありません。受け入れ可能なCIDR範囲は、IPv4の/0
(すべてのIPv4の場合)と/32
(単一のアドレスの場合)の間です。ほとんどのネットワークはCIDR範囲の/24
です(このIP範囲では、10.0.2.1 - 10.0.2.255
は使用可能なアドレス空間として含まれますが、.1
はゲートウェイであり、.255
はブロードキャストですが、ネットワークによって異なる場合があるため、すべての値を再確認してください!)。システムがネットマスクと到達可能なIPスペースが何であるかをシステムが認識できるように、適切なCIDR範囲が必要です。10.0.2.0
は適切なゲートウェイアドレスではありません。 .0
アドレスは、通常はネットワークプレフィックスだけで保持されるため、IPサブネット化では使用できません。また、netowrk設定は/24
を実行しようとしますが、恐ろしく失敗するため、このゲートウェイはおそらく10.0.2.1
であるはずです。したがって、インデントを修正およびネットワークを修正して、指定したIPとゲートウェイに基づいて/24
であると想定すると、YAMLは次のようになります。以下のように、適切なインデントを付けます。そして、あなたの既存のものと比較して、あなた本当にインデントがどのように機能するかを学ぶ必要があります。
network:
version: 2
ethernets:
enp0s3:
dhcp4: no
dhcp6: no
addresses: [10.0.2.15/24]
gateway4: 10.0.2.1
nameservers:
addresses: [8.8.8.8, 8.8.4.4]
これは私のために働きました:
ネットワーク: イーサネット: enp2s0: アドレス: -192.168.0.2/24 dhcp4:false gateway4:192.168.0.1 ネームサーバー: アドレス: -192.168.0.1 -8.8.8.8 検索: -ワークグループ バージョン:2
次に、次のコマンドを実行しました:
Sudo netplan generate
Sudo netplan apply
それもあなたのためになることを願っています。
上記と次のようなガイドを使用して、ネットプランを構成しようとしました。
buntu 18.04 Bionic Beaver Linuxで静的IPアドレスを設定する方法
...しかし、私はnplanを完全に削除して実行する方が簡単だと感じました このようなもの とすぐに機能する解決策は、最小限の手間で仕事を終わらせることが常に私が使用するものになるでしょう、より複雑で迷惑な新しいものというよりはむしろ。