HOME
  Security
   Software
    Hardware
  
FPGA
  CPU
   Android
    Raspberry Pi
  
nLite
  Xcode
   etc.
    ALL
  
LINK
BACK
 

2017/10/03

Raspberry Piに Avahi Bonjourサービスを入れて、ホスト名で接続できる様にする方法 Raspberry Piに Avahi Bonjourサービスを入れて、ホスト名で接続できる様にする方法

(ラズパイに Bonjourサービスを入れて IPアドレスが分からなくてもホスト名で簡単に接続する方法)

Tags: [Raspberry Pi], [電子工作]




● Raspberry Pi用の便利なアプリケーションを作成しました


2020/03/01
FWinSdCardImager SDカード イメージ書き込みアプリ、ラズパイの Raspbian OS、Jetson Nanoの Ubuntuの書き込みに便利
FWinSdCardImager SDカード イメージ書き込みアプリ、ラズパイの Raspbian OS、Jetson Nanoの Ubuntuの書き込みに便利

  ラズパイや Jetson Nano等のワンボードマイコン等への OSイメージの書き込みが簡単にできる

2020/03/10
FWinPiFinder ラズベリーパイ IPアドレス発見アプリ。ARPコマンドでラズパイの IPアドレスを探索発見する
FWinPiFinder ラズベリーパイ IPアドレス発見アプリ。ARPコマンドでラズパイの IPアドレスを探索発見する

  Raspberry Piや NVIDIA Jetson Nano等の IPアドレスを MACアドレスの OUI部分を使用して発見する


● Bonjour Avahi - リモート機器へホスト名の名称でアクセスできる。

 対象のリモート機器へのアクセスを IPアドレスではなくホスト名でアクセスできる様になる。
Avahi - Wikipedia

 Apple社の Macパソコンや iPhone携帯電話等でネットワーク上のプリンタ機器や他端末の検索に使用している技術。
 DHCPネットワークの場合は IPアドレスが不定なので、一意に決まるホスト名でアクセスできれば便利なのです。

 Bonjour ネットワークプロトコルは、UDP ポート 5353 でネットワークパケットを送受信します。マルチキャスト DNS。
Apple ソフトウェア製品で使われている TCP および UDP ポート
 macOS、macOS Server、Apple Remote Desktop、iCloud などの Apple 製品で使われる TCP ポートと UDP ポートについて説明します。これらのポートの多くは、業界標準の「ウェルノウン (well known)」ポートです。

 Port 5353, UDP, Multicast DNS (MDNS), RFC 3927,mdns,Bonjour、AirPlay、ホームシェアリング、プリンタの検出、どこでも My Mac


● Raspberry Pi 3の Raspbian Stretch版で Bonjour Avahi

$ uname -a
Linux raspberrypi 4.9.41-v7+ #1023 SMP Tue Aug 8 16:00:15 BST 2017 armv7l GNU/Linux

$ lsb_release -a
No LSB modules are available.
Distributor ID: Raspbian
Description:    Raspbian GNU/Linux 9.1 (stretch)
Release:        9.1
Codename:       stretch


● Raspberry Pi 3に Avahi(Bonjour)をインストールする方法

 ラズパイは Raspbian 2015/05/05に avahi-daemonが標準装備になりました。
Raspbian Release notes
2015-05-05:
  * Updated UI changes
  * Updated firmware
  * Install raspberrypi-net-mods
  * Install avahi-daemon
  * Add user pi to new i2c and spi groups
  * Modified udev rules for i2c and spi devices

 標準装備になったので現在は下記の操作は不要。
# お決まりの手順
sudo apt-get update

# apt-get installで avahi-daemon(Bonjour)をインストール
sudo apt-get install avahi-daemon

# 最初から既にインストールされていました
Reading package lists... Done
Building dependency tree
Reading state information... Done
avahi-daemon is already the newest version.
0 upgraded, 0 newly installed, 0 to remove and 58 not upgraded.

 Avahiサービスを開始する
# avahi-daemonを実行する
avahi-daemon
# This program is intended to be run as root.

# rootで実行しろと言われたので sudoする
sudo avahi-daemon
# Daemon already running on PID 454
# 最初から既に実行されていました


● Bonjour対応機器からは raspberrypi.localでアクセスできます

 /etc/hostnameに記載のホスト名+.localとなります。
raspberrypi.local
pi@raspberrypi:~ $ cat /etc/hostname
raspberrypi

 /etc/hostsの方は自身のローカルアドレスのホスト名を定義しているだけ。
pi@raspberrypi:~ $ cat /etc/hosts
127.0.0.1       localhost
::1             localhost ip6-localhost ip6-loopback
ff02::1         ip6-allnodes
ff02::2         ip6-allrouters

127.0.1.1       raspberrypi


●ラズパイに Dockerを入れていると Bonjour Avahiの IPアドレスが Docker割り当てになってしまう

 ラズパイに Dockerを入れていると Bonjour Avahiの IPアドレスが Dockerに割り当てた IPアドレスになってしまう事があります。
 回避方法は /etc/avahi/avahi-daemon.confに明示的に eth0の IPアドレスを使用する様にします。(Wi-Fiの場合は wlan0とかを指定する)

avahi-daemon.conf(5) - Linux man page

/etc/avahi/avahi-daemon.conf
[server]
allow-interfaces=eth0
deny-interfaces=docker0

# raspberrypi.localの Bonjour Avahiの IPアドレスが Dockerの IPアドレスになっている例
# 上記の /etc/avahi/avahi-daemon.confの設定を行なえば治ります

pi@raspberrypi:~ $ ping raspberrypi.local
PING raspberrypi.local (192.168.8.1) 56(84) bytes of data.
64 bytes from 192.168.8.1 (192.168.8.1): icmp_seq=1 ttl=64 time=0.218 ms
64 bytes from 192.168.8.1 (192.168.8.1): icmp_seq=2 ttl=64 time=0.165 ms
^C
 ↑ Bonjour Avahiの raspberrypi.localの IPアドレスが Dockerの IPアドレスになっている

pi@raspberrypi:~ $ ifconfig
Dockerの IPアドレス
docker0: flags=4099<UP,BROADCAST,MULTICAST>  mtu 1500
        inet 192.168.8.1  netmask 255.255.0.0  broadcast 192.168.255.255
        ether 02:42:63:xx:xx:xx  txqueuelen 0  (Ethernet)
        RX packets 0  bytes 0 (0.0 B)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 0  bytes 0 (0.0 B)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

eth0 LANポートの IPアドレス
eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 192.168.9.234  netmask 255.255.252.0  broadcast 192.168.9.255
        inet6 fe80::xxxx:xxxx:xxxx:xxxx  prefixlen 64  scopeid 0x20<link>
        ether b8:27:eb:xx:xx:xx  txqueuelen 1000  (Ethernet)
        RX packets 44955  bytes 19285843 (18.3 MiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 8522  bytes 816601 (797.4 KiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0


● Macパソコンで Bonjour Avahiの機器へ接続する場合はそのままで大丈夫。

 普通にターミナルから
ping raspberrypi.local
 とすれば pingコマンドを実行できます。


● Windows版 iTunesで Bonjourサービスだけを取り出してインストールする方法

 Windows 8.1まで(Windows 10は不要)

iTunes for Windows

 iTunes64Setup.exeをダウンロードする。(270MB程度)
 拡張子を .cabに書き換える。(もしくは CAB対応のアーカイブソフトで中身を参照する)
 iTunes64Setup.cabの中身を解凍する。
 Bonjour64.msiを取り出す。
 Bonjour64.msiをダブルクリックしてインストールする。

 Bonjour64.msiのファイルサイズは 2.7MB程度です。


● Windowsパソコンで Bonjour Avahiの機器へ接続する場合は mDNSが必要。

Windows 8.1まで
 ・Windows 8.1までは mDNSを使うために iTunesまたは Bonjour Print Services for Windowsに含まれる Bonjour for Windowsをインストールする必要があった。
iTunes 12.1.3 for Windows XP、Vista
Bonjour for Windows - Apple - Support - Downloads

Windows 10
 ・Windows 10は DNS-SD / mDNSが標準でインストールして有りネイティブでサポートされています。
 ただし、2017年 10月の FCU Fall Creator Updateで Firewallでブロック設定されたので、使用する場合は Firewallの設定を変更する必要が有ります。

 DNS-Based Service Discovery (DNS-SD) / Multicast DNS (mDNS)

● Windowsパソコンで Bonjour Avahiのファイアウォールの設定

Windows PCはファイアウォールの設定に注意(下記コマンドで Bonjour機能のネットワーク通信を許可します)
 ・Bonjour ネットワークプロトコルは、UDP ポート 5353 でネットワークパケットを送受信します。サポート対象のシステムでは、Bonjour インストーラによりインストール中に Windows ファイアウォールが適切に設定されますが、別の「パーソナルファイアウォール」を有効にしている場合は、UDP ポート 5353 が開いており、Bonjour が正しく機能するようになっていることを確認する必要があります。
rem Bonjour UDP Port 5353 Allow
netsh advfirewall firewall add rule name="Bonjour UDP in" dir=in protocol=udp localport=5353 action=allow
rem LLMNR UDP Port 5355 Allow
netsh advfirewall firewall add rule name="LLMNR UDP in" dir=in protocol=udp localport=5355 action=allow


●同じく 2017/10 FCU Fall Creator Updateで SMBv1が無効になりました

 ※ SMB v1を有効にすると SMBv1自体の脆弱性でランサムウェア WannaCryptに感染の危険性が有ります。

SMBv1 is not installed by default in Windows 10 Fall Creators Update and Windows Server version 1709
In Windows 10 Fall Creators Update and Windows Server, version 1709 (RS3), the Server Message Block version 1 (SMBv1) network protocol is no longer installed by default. It was superseded by SMBv2 and later protocols starting in 2007. Microsoft publicly deprecated the SMBv1 protocol in 2014.
KB2696547 How to detect enable and disable SMBv1 SMBv2 and SMBv3 in Windows and Windows Server

● Windows 10の SMB v1を有効にする方法

・ Detect(有効か無効かの状態を調べる)
Get-WindowsFeature FS-SMB1

・ Disable(無効にする)
Disable-WindowsOptionalFeature -Online -FeatureName smb1protocol

・ Enable(有効にする)
Enable-WindowsOptionalFeature -Online -FeatureName smb1protocol

Windows Vista ベースのコンピューターとそれ以前のオペレーティング システムの間で、サイズの大きいファイルをコピーすると、予想よりもコピー操作に時間がかかることがある
netsh interface tcp set global autotuninglevel=disabled

The Cable Guy - 2005 年 11 月


● xfinder Windowsアプリ

xfinderの利用方法 | OpenRTM-aist
 Windowsパソコンでネットワーク内に接続されたワンボードマイコンを検出し IPアドレスを表示する便利なアプリ。
 xfinder は Raspberry Pi や BeagleBone などのCPUボードに搭載されている Ethernet インターフェースの MAC (Media Access Control) アドレスからIPアドレスを割出しログインするためのツールです。

2018/04/20
Raspberry Piや Jetson NANO等をネットワークに接続した場合の IPアドレスの便利ツール xfinder
Raspberry Piや Jetson NANO等をネットワークに接続した場合の IPアドレスの便利ツール xfinder

  DHCPで自動で IPアドレスが割り当てられる場合に、ワンボードマイコンの IPアドレスを調べる場合に便利

2019/12/05
Raspberry Piや Jetson NANO等をネットワークに接続した場合の IPアドレスを知る方法 arp -a
Raspberry Piや Jetson NANO等をネットワークに接続した場合の IPアドレスを知る方法 arp -a

  ラズパイ等のワンボードマイコンの IPアドレスを外部から調べる方法、arp -a b8-27-eb



Tags: [Raspberry Pi], [電子工作]

●関連するコンテンツ(この記事を読んだ人は、次の記事も読んでいます)

FWinSdCardImager SDカード イメージ書き込みアプリ、ラズパイの Raspbian OS、Jetson Nanoの Ubuntuの書き込みに便利
FWinSdCardImager SDカード イメージ書き込みアプリ、ラズパイの Raspbian OS、Jetson Nanoの Ubuntuの書き込みに便利

  ラズパイや Jetson Nano等のワンボードマイコン等への OSイメージの書き込みが簡単にできる

FWinPiFinder ラズベリーパイ IPアドレス発見アプリ。ARPコマンドでラズパイの IPアドレスを探索発見する
FWinPiFinder ラズベリーパイ IPアドレス発見アプリ。ARPコマンドでラズパイの IPアドレスを探索発見する

  Raspberry Piや NVIDIA Jetson Nano等の IPアドレスを MACアドレスの OUI部分を使用して発見する

Raspberry Pi 3系のトラブルであるある第一位の電源トラブル、低電圧警報に関する情報のまとめ
Raspberry Pi 3系のトラブルであるある第一位の電源トラブル、低電圧警報に関する情報のまとめ

  ラズパイ3B系での低電圧警報に関する情報まとめ、コマンドラインやログファイルから低電圧を検知する方法

Raspberry Piで CPUの脆弱性 Spectreと Meltdownの脆弱性をチェックする方法
Raspberry Piで CPUの脆弱性 Spectreと Meltdownの脆弱性をチェックする方法

  ラズパイで 2018年初頭に大騒ぎになったスペクターとメルトダウンの CPUの脆弱性をチェックする方法

Raspberry Pi Zero Wを海外通販の Pimoroni等での購入方法、購入できる通販ショップ一覧まとめ
Raspberry Pi Zero Wを海外通販の Pimoroni等での購入方法、購入できる通販ショップ一覧まとめ

  ラズパイゼロW ワイヤレスモデルを海外通販でサクッと簡単に個人輸入で入手。技適通過でも国内販売は常に品切れ

Raspberry Pi 3で安定して使える相性の無い最適な microSDカードの種類のまとめ
Raspberry Pi 3で安定して使える相性の無い最適な microSDカードの種類のまとめ

  ラズパイ3で安定して使える microSDカードを購入する Teamと SanDiskは絶対に買わない

Raspberry Pi 3 Model Bに専用カメラモジュール RaspiCamを接続する方法
Raspberry Pi 3 Model Bに専用カメラモジュール RaspiCamを接続する方法

  ラズパイに専用カメラモジュールを接続して Raspbianで写真の静止画撮影や動画を録画する方法

Raspberry Pi 3の Linuxコンソール上で使用する各種コマンドまとめ
Raspberry Pi 3の Linuxコンソール上で使用する各種コマンドまとめ

  ラズパイの Raspbian OSのコマンドラインで使用する便利コマンド、負荷試験や CPUシリアル番号の確認方法等も

Raspberry Pi 3公式フォーラムの FAQの内容の日本語訳
Raspberry Pi 3公式フォーラムの FAQの内容の日本語訳

  ラズパイ公式フォーラムの「The Raspberry Pi 3 Model B Q&A thread」の日本語訳

Raspberry Pi 3で GPIO端子の I2C機能を有効化する方法
Raspberry Pi 3で GPIO端子の I2C機能を有効化する方法

  ラズパイ3の GPIO端子の I2C機能を有効にして各種センサーを繋げる方法まとめ

大人気の CPUボード、Raspberry Pi 3 Model Bで作ってみよう
大人気の CPUボード、Raspberry Pi 3 Model Bで作ってみよう

  Raspberry Piの開発環境の構築やタッチパネル付き液晶ディスプレイや各種センサーの使い方まとめ


Raspberry Pi 3、シングルボードコンピュータ ラズパイ3 Raspberry Pi関連はこちらへまとめました
 下記以外にも多数のラズパイ関係の記事が有ります。
 (I2C制御、GPIO制御、1-Wire制御、シリアル通信、日本語音声合成、日本語音声認識、中国語音声合成、MeCab 形態素解析エンジン、赤外線リモコン制御、秋月 I2C液晶モジュール、KeDei 3.5インチ液晶、HDMI 5インチ液晶、NFCカードリーダ、コマンドライン操作方法等)
Raspberry Pi 3に HDMI接続の 800x480 5インチ TFT液晶を接続して使用する方法
Raspberry Pi Raspbian Jessie 2017-07最終版で LIRCを使って学習リモコン、赤外線リモコンを送受信する方法
Raspberry Pi 3の WiFiを広告ブロック機能付きの無線LANアクセスポイント化 hostapd + dnsmasq編
Raspberry Pi 3の Bluetoothで ブルテザで通信する方法(Bluetooth編)
Raspberry Pi 3で日本語音声を合成して喋らせる方法(OpenJTalk編)
Raspberry Pi 3に USB Micを接続して日本語の音声認識をする方法(Julius編)
Raspberry Pi 3の GPIOに LEDとスイッチを接続して Lチカする方法
Raspberry Pi 3の GPIOに LEDとスイッチを接続してシャットダウンボタンを実装する方法
Raspberry Pi 3で GPIO端子の I2C機能を有効化する方法
Raspberry Pi 3の GPIOに I2C通信方式の気圧計 BMP280を接続する方法
Raspberry Pi 3に I2C通信方式の NFCリーダライタ PN532を接続して NFC FeliCaカードを読む方法
Raspberry Pi 3でネットワーク ライブカメラを構築する方法 Motion編
Raspberry Pi 3でネットワーク ライブカメラを構築する方法 MJPG-streamer編
Raspberry Pi 3 Model Bで動画処理アプリ FFmpegをコンパイルする方法
Raspberry Pi3の X-Window Systemに Windowsのリモートデスクトップから接続する方法
Raspberry Pi3に WebRTCの STUN/TRUNサーバと PeerJSサーバをインストールする方法
【成功版】Raspberry Piで NNPACK対応版の Darknet Neural Network Frameworkをビルドする方法


Espressif ESP8266 Arduino互換でスケッチが使える ESP-12Eモジュール基板
Espressif ESP8266 Arduino互換でスケッチが使える ESP-12Eモジュール基板

  Espressif ESP8266 ESP-12-E NodeMCU V1 ESP12 CP2102

BangGood通販はドローン以外にも面白い商品がまだまだ有った(電子工作編)
BangGood通販はドローン以外にも面白い商品がまだまだ有った(電子工作編)

  レーザー彫刻機、カラー液晶の DIYオシロ、Arduinoや Raspberry Pi用の小型カラー液晶




[HOME] | [BACK]
リンクフリー(連絡不要、ただしトップページ以外は Web構成の変更で移動する場合があります)
Copyright (c) 2017 FREE WING,Y.Sakamoto
Powered by 猫屋敷工房 & HTML Generator

http://www.neko.ne.jp/~freewing/raspberry_pi/raspberry_pi_avahi_daemon_bonjour/