設定の後始末

中古のLet's noteを「試しにNextcloudのフロントエンドやDNS(AdGuard Home)」にしていたものの、いよいよもって本格的に稼働させることにします。

ネットワーク環境の確認情報

  • 対象機器:
    • Ubuntu 26.04 Desktopノート
  • 有線LAN (NIC)
    • : enp0sxx(NetworkManager接続名: netplan-enp0s31f6
  • 無線LAN (Wi-Fi)
    • : wlp1s0(NetworkManager接続名: Wi-Fi
  • デフォルトゲートウェイ:
    • 192.168.x.1
  • サブネットマスク:
    • /24 (255.255.255.0)

問題と解決

直面した問題

デスクトップ画面で有線LANと無線LANを同時に切り替えようとしたのですが、
無線側がまだ 引き継ぎたいIPアドレスを掴んでいたため、有線側で同じIPを有効化しようとした際にアドレスの重複・競合が発生し、以下のエラーで有効化に失敗しました。

エラー: 接続のアクティベーションに失敗: IP 設定を確保できませんでした (利用可能なアドレスがない、タイムアウトなど)

これに対処していきます。ここからはターミナルやSSH接続です。

解決策

  1. 無線接続を先にダウンさせ、旧IPアドレスを解放します。
  2. 無線のIPv4設定を自動(DHCP)に変更・初期化する。
  3. 有線LAN側に静的IP(192.168.11.16)とゲートウェイ・DNSを設定する。
  4. 有線LAN接続を有効化する。

実行した復旧手順(コマンド)

SSH切断による作業中断を防ぐため、以下のコマンドを一括で実行しました。

sudo nmcli connection down "Wi-Fi" && \
sudo nmcli connection modify "Wi-Fi" ipv4.method auto ipv4.addresses "" ipv4.gateway "" ipv4.dns "" && \
sudo nmcli connection modify "netplan-enp0s31f6" ipv4.method manual ipv4.addresses 192.168.x.x/24 ipv4.gateway 192.168.x.1 ipv4.dns "192.168.x.1" && \
sudo nmcli connection up "netplan-enp0s31f6"

それぞれのステップで何が起きているのか、順番に詳しく解説します。

Step 1: 無線LANの切断

sudo nmcli connection down "Wi-Fi"
  • やっていること:
    • 現在有効になっているWi-Fi接続(Wi-Fi)を即座に無効化(切断)します。
  • 目的:
    • これから有線側に設定しようとしているIPアドレス(192.168.x.x)をWi-Fi側から完全に解放し、IPアドレスの重複(衝突)を防ぐために行っています。

Step 2: 無線LAN設定の初期化 (DHCP化)

sudo nmcli connection modify "Wi-Fi" ipv4.method auto ipv4.addresses "" ipv4.gateway "" ipv4.dns ""
  • やっていること:
    • Wi-Fi接続の設定情報を変更します。
  • ipv4.method auto:
    • IPアドレスの取得方法を「自動(DHCP)」に変更
  • ipv4.addresses "":
    • 以前割り当てていた固定IPアドレスの登録を削除
  • ipv4.gateway "":
    • 設定されていたゲートウェイ情報を削除
  • ipv4.dns "":
    • 設定されていたDNSサーバー情報を削除
  • 目的: 今後Wi-Fiを単体で使うことがあっても、固定IPではなく自動でIPを取得(DHCP)するように設定をリセットしています。

Step 3: 有線LANへの固定IP・ネットワーク情報の設定

sudo nmcli connection modify "netplan-enp0s31f6" ipv4.method manual ipv4.addresses 192.168.x.x/24 ipv4.gateway 192.168.x.1 ipv4.dns "192.168.x.1"
  • やっていること: 有線LAN(netplan-enp0s31f6)に新しいネットワーク情報を書き込みます。
  • ipv4.method manual: IP設定を「手動(固定IP)」に変更
  • ipv4.addresses 192.168.x.x/24: サーバー用の固定IPアドレスとサブネットマスクをセット
  • ipv4.gateway 192.168.x.1: デフォルトゲートウェイ(ルーター)を指定
  • ipv4.dns "192.168.x.1": 名前解決用のDNSサーバー(ルーター)を指定
  • 目的: サーバー機能(NextcloudやAdGuard等)を引き継ぐための固定IP環境を有線側に割り当てます。

Step 4: 有線LANの有効化(新設定の反映)

sudo nmcli connection up "netplan-enp0s31f6"
  • やっていること:
    • Step 3で書き換えた設定を使って、有線LAN接続を起動(アクティベート)します。
  • 目的:
    • 設定を反映させて通信を開始します。この瞬間に有線側のIPアドレスが 192.168.x.x に変更されるため、旧IPで繋がっていたSSH接続はここで途切れ、新しいIPでの接続が解禁されます。

なぜこれを「1行(ワンライナー)」でやったのか?

SSH接続中にネットワーク設定を変更すると、Wi-Fiを切断した時点(Step 1)でターミナルの操作ができなくなってしまいます。

命令を && で繋いで1行で送信しておくことで、SSHが切れてしまってもUbuntu内部でStep 4まで自動的に突っ走って完了させてくれるという技術的な工夫(SSH切断対策)でした。

最終確認結果

  1. IPアドレス・インターフェース状態の確認 (ip a)
  • 有線 (enp0s31f6): inet 192.168.x.x/24 (正常に固定IP割り当て完了)
  • 無線 (wlp1s0): state DOWN (競合解消)
  1. 疎通確認
  • 有線LANのIP宛て(192.168.x.x)へのSSH再接続: 成功
  • 外向き通信テスト (ping -c 3 google.com): 成功

なんとなくで設定していた宿題に取り組むことが出来ました。