ネットワーク設定
スタンドアロンモードでは、シリアルアクセスとネットワークアクセスの両方を設定します。シリアルアクセスは、ネットワーク接続が利用できない場合や、正しく設定されていない場合に、DevKitにアクセスできるようにします。
デフォルトでは、DevKitのネットワークインターフェースはDHCPを使用します。
- DevKitをコンピューターに直接接続したい場合は、コンピューターのネットワークインターフェースに固定IPを設定し、DevKitに直接接続してください。
- DevKitにネットワークからIPアドレスを自動的に取得させたい場合は、インターフェースをDHCPを使用するように設定してください。
現在のIPアドレスを確認
シリアルコンソールから、次のコマンドを実行します。
sima@modalix:~$ ip a | grep inet
inet 127.0.0.1/8 scope host lo
inet6 ::1/128 scope host noprefixroute
inet 192.168.91.181/22 brd 192.168.91.255 scope global dynamic noprefixroute end0
inet6 fe80::ab34:b995:9f6e:160e/64 scope link noprefixroute
- Linux シェルでのネットワーク設定
- ホストのネットワーク接続を共有
- U-Boot シェルでのネットワーク設定
デバイスを再起動せずに、静的IPアドレスとDHCPを切り替えたい場合は、以下の手順に従ってください。
DevKitにsima-cliがインストールされている場合は、このコマンドを実行して、再起動せずにDHCPと静的構成を切り替えてください。
modalix:~$ sima-cli network
このコマンドは、静的および DHCP ネットワーク構成のためのインタラクティブなメニューを開きます。
sima-cli が利用できない場合は、あらかじめ設定された接続プロファイル(end0-static と end0-dhcp)を切り替えるために、nmcli を使用してください。
以下の手順では、NetworkManagerプロファイルを使用し、eLxr 2.1以降を実行しているDevKitシステムに適用されます。システムがそれ以前のバージョンを実行している場合は、v2.0.0のドキュメントを参照してください。
固定IPアドレスへの切り替え
ネットワークインターフェースを DHCP から固定 IP アドレスに変更するには、次を実行します。
modalix:~$ sudo nmcli connection up end0-static
modalix:~$ nmcli -f NAME,DEVICE,STATE connection show --active
modalix:~$ networkctl status
DHCPへの切り替え
ネットワークインターフェースを静的IPアドレスからDHCPに変更するには、次のコマンドを実行します。
modalix:~$ sudo nmcli connection up end0-dhcp
modalix:~$ nmcli -f NAME,DEVICE,STATE connection show --active
modalix:~$ networkctl status
静的IPアドレスの変更
end0-staticプロファイルで使用するIPアドレスを変更するには、プロファイルを更新し、再度アクティブにしてください。
modalix:~$ sudo nmcli connection modify end0-static ipv4.addresses 192.168.1.20/24
modalix:~$ sudo nmcli connection up end0-static
192.168.1.20/24 を、希望するアドレスとプレフィックス に置き換えてください。NetworkManager は、プロファイルを /etc/NetworkManager/system-connections/ に保存します。バージョン 2.0 以前のレガシーファイルである /etc/systemd/network/20-end0-static.network は、現在は存在しません。
- DevKitが開発者ネットワークに直接接続できない場合に、このオプションを使用します。
- DevKitをホストのイーサネットポートに接続します。ホストにイーサネットポートがない場合は、USB-to-イーサネットアダプターを使用してください。
- ホストは、
pipを使用したPythonパッケージのインストールなど、インターネット接続をDevKitと共有できます。 - このオプションには、ホストコンピューターでのインターネット接続の共有が必要です。
-
Ubuntuホストでインターネット接続の共有を有効にするには、次の手順を実行します。
- 画面の右上にある
Settingsを開き、Networkセクションに移動します。 Wiredの下にあるプラス記号をクリックして、ボードに既存のプロファイルがない場合は新しい設定プロファイルを作成するか、既存のプロファイルがある場合はそれを変更します。- 新しいプロファイルを作成する場合は、「共有」または任意の名前を付けます。
IPv4タブで、Shared to other computersを選択します。 「適用」をクリックします。- 既存の接続がある場合は、一度オフにしてから再度オンにすると、変更が反映されます。
- これで、ホストは DevKit とネットワーク接続されるはずです。
10.42.0.0/24は、この設定で Ubuntu が使用するデフォルトのサブネットですが、ホストは異なるサブネットを使用する場合があります。 - 次のステップで結果が返されない場合は、
ifconfigを実行して、イーサネットインターフェイスの IP アドレスを確認します。
- 画面の右上にある
-
Ubuntuホストでターミナルを開き、そのIP範囲内のデバイスをスキャンします。
sima-user@sima-user-machine:~$ nmap -sn 10.42.0.0/24 | grep reportNmap scan report for sima-user-machine (10.42.0.1)Nmap scan report for 10.42.0.241この結果には、このサブネット内のIPアドレスがリストされます。末尾が
.1のアドレスは通常、ホストです。もう一方のアドレスはDevKitです。この例では、DevKitは10.42.0.241、ホストは10.42.0.1です。 -
接続をテストするには、次のコマンドを実行してください。
sima-user@sima-user-machine:~$ ssh sima@10.42.0.241...Last login: Mon Nov 27 19:58:33 2023modalix:~$ -
DevKitから、次のホストにpingを実行してください。
10.42.0.1ホストでSSHサーバーが実行されている場合、SSHを使用して接続することもできます。modalix:~$ ping 10.42.0.1 -
DevKitにpingやSSHで接続できない場合は、静的IP設定方法を使用してください。
この手順は、DevKit ファームウェアのバージョン 2.0 以前にのみ適用されます。バージョン 2.1 以降では、Linux 側の設定を使用してください。U-Boot でネットワークを設定すると、ファームウェアをアップグレードしてもネットワーク設定が保持されます。
-
DevKitをUART経由で接続し、シリアルターミナルを使用します。
-
DevKitを再起動します。
-
メッセージ「
Hit any key to stop autoboot」が表示されたら、任意のキーを押してU-Bootに入ります。 -
固定IPアドレスに切り替えるには、次のコマンドを入力します。
sima:~$ env set forcenetcfg static; saveenvsima:~$ boot -
ボードが再起動し、最初のイーサネットポートと2番目のイーサネットポートにそれぞれ
192.168.1.20と192.168.2.20を使用します。 -
ボードの静的IPアドレスを変更するには、デバイスの起動後に
viを使用してネットワークファイルを編集します。modalix:~$ sudo vi /etc/systemd/network/20-end0-static.network警告このファイルは、ファームウェアバージョン2.0以前にのみ存在します。バージョン2.1以降では、NetworkManagerプロファイルに置き換えられています。静的IPアドレスは、Linuxシェルでのネットワーク設定タブに記載されている手順に従って、
nmcliを使用して変更してください。 -
ネットワークセクションで、必要に応じてIPアドレスを更新してください。
-
DHCPモードを設定するには、以下のコマンドを入力し、ボードを起動してください。
sima:~$ env set forcenetcfg dhcp; saveenvsima:~$ boot