web-dev-qa-db-ja.com

isc-dhcp-serverがクラッシュしないようにNetplanを使用して静的IPを割り当てる方法

Ubuntu 18.04デスクトップで開発している小さなルーターがあり、イーサネットを接続せずに起動すると、Netplanが固定IPを割り当てていないようです(LAN側)。 WAN側はDHCPに接続されています。LANeth0インターフェースはisc-dhcp-serverが実行されているインターフェースです。

問題:eth0インターフェイスにIPアドレスが存在しないため、起動時にisc-dhcp-serverがクラッシュします。

Eth0に接続されたデバイスで手動で考える場合、すべてがうまく機能します。したがって、eth0に何かが接続されている場合、静的IPは機能しています。

192.168.10.1がプラグインされていない場合でも、eth0(このシステムではenp2s0)に割り当てるにはどうすればよいですか?

次の単一の.YAMLファイルがあります。

# Let NetworkManager manage all devices on this system
network:
  ethernets:
    enp2s0:
      dhcp4: no
      addresses:
        - 192.168.10.1/24
      nameservers:
        addresses:
          - 8.8.8.8
          - 1.1.1.1
        search: []
    enp3s0:
      dhcp4: yes
  version: 2
 renderer: NetworkManager

または、接続されているインターフェースのトリガーに基づいてisc-dhcp-serverを起動(または再起動)する簡単な方法はありますか?

これは下記の非常によく似た質問でしたが、OPからクローズまたは検証されていませんでした...そして、これを達成する方法を見つけることに成功していません。どんな助けでもありがたいです。

同様の質問は閉じていません

Update 8/3/19:上記のようにw.r.t.サーバーを再起動したところ、ケーブルの状態は/ sys/class/net/enp2s0/carrierで確実に確認できることがわかりました。このファイルの値は、切断されている場合は0、接続されている場合は1です。

したがって、この値をテストするスクリプトを作成するのは非常に論理的です。値がゼロの場合は何もせず、値が0から1に変化した場合はコマンドを実行し、最後に値が1のままであるか1から0は何もしません。これを達成するためにどのようにbashスクリプトを記述しますか?

Update 8/14/19:以下の回答に従って解決策が見つかりました-ifupdownがインストールされていることを確認してください-私のシステムはインストールしていません。静的IPを取得するソリューションは信頼できると思われるので、スクリプトのアイデアを追求しませんでした。

1
user9974748

netplanの場合は、この.yamlファイルを試してください...

network:
  version: 2
  renderer: networkd
  ethernets:
    enp2s0:
      addresses:
        - [192.168.10.1/24]
      gateway4: 
        - 192.168.xx.xx
      nameservers:
        addresses:
          - 8.8.8.8
          - 1.1.1.1
        search: []
    enp3s0:
      dhcp4: yes

Sudo netplan --debug generate

Sudo netplan apply

reboot

NetworkManagerの場合、この.yamlファイルを使用します...

network:
  version: 2
  renderer: NetworkManager

Sudo netplan --debug generate

Sudo netplan apply

次に/etc/network/interfacesを次のように編集します...

auto lo
iface lo inet loopback

auto enp2s0
iface enp2s0 inet static
        address 192.168.10.1
        netmask 255.255.255.0
        gateway 192.168.xx.xx
        dns-nameservers 8.8.8.8 1.1.1.1

auto enp3s0
iface enp3s0 inet dhcp

reboot

更新#1:

  • networkManagerを使用することにしました

  • インストール済みifupdown

0
heynnema