PYNQ-Z1 にホスト名でアクセスできるようにするには

More than 1 year has passed since last update.


はじめに

本記事では、 pynq.io から PYNQ-Z1 ボード向けに提供されている PYNQ イメージにおいて、 HTTP や SSH にてアクセスする際にホスト名を利用できるようにする方法を示します。

なお、ここで紹介する方法は、特に PYNQ イメージやそのベースになっている Ubuntu 15.10 に固有の方法、というわけではありません。様々な Linux 環境でも同様に実現できると思われます。また、 Raspberry Pi も同様の設定されているようです。


Samba の設定

Samba の WINS 機能を利用すると、ホスト名と IP アドレスの組をローカルネットワークに周知できます。

幸い PYNQ のイメージには Samba 4.x が標準で含まれており、動作しています。この Samba の設定を変更し利用します。


/etc/samba/smb.conf の設定

/etc/samba/smb.conf の global セクションに下記の内容を追加します。

[global]

netbios name = pynq # NetBIOS コンピュータ名を指定
wins support = yes


サービス再起動

下記コマンドにて Samba を再起動します。

$ sudo systemctl restart smbd

$ sudo systemctl restart nmbd


Windows PC からのアクセス確認


  • PowerShell もしくはコマンドプロンプトから ping pynq を実行し、名前解決および ICMP Echo Reply が返送されてくるか確認します。

  • ネットワーク上のコンピュータ \\pynq にアクセスし、既定のファイル共有にアクセスできるかを確認します。


  • http://pynq:9090/ にアクセスし、 Jupyter Notebook にアクセスできるか確認します。


avahi-daemon の設定

avahi-daemon は Apple による Zeroconf の実装です。これを設定することにより、 macOS (MacOS X) からの名前解決が可能となります。


avahi-daemon のインストールと起動

PYNQ で下記操作を行います。

$ sudo apt install avahi-daemon

$ sudo systemctl start avahi-daemon
$ sudo systemctl enable avahi-daemon


Mac からのアクセス確認

macOS (MacOS X) から名前解決する場合は pynq.local という名前で引く必要があるようです。


  • Terminal から ping pynq.local を実行し、名前解決および ICMP Echo Reply が返送されてくるか確認します。

  • Finder で Cmd-K (Connect to Server) ダイアログウインドウを開き、 smb://pynq.local/ にアクセスし、既定のファイル共有にアクセスできるかを確認します。


  • http://pynq.local:9090/ にアクセスし、 Jupyter Notebook にアクセスできるか確認します。


Linux からのアクセス確認

私は Linux 環境からのアクセス試験をしていませんが、 Avahi を使えば Linux からも名前解決ができるようです。