回答:
このチュートリアルでは、2015-05-05以降、Raspbianに含まれているデフォルトのネットワークマネージャーdhcpcdを使用してネットワークをセットアップする方法について説明します。Raspbian Buster、Raspbian Stretch、Raspbian Jessie、最後のRaspbian WheezyのFoundationリリースに適用されます。
バスターの設定はストレッチと同じです。
ルーターでイーサネット接続を使用している場合、構成は不要であり、そのまま使用できます。
注Pi3 / Pi Zero W内蔵WiFiは5GHzネットワークをサポートしておらず、無線規制ドメインが設定されるまで、2.4GHzネットワーク上のCh 12,13に接続できない場合があります。
5GHz対応デバイスでのWiFiは、無線規制ドメインが設定されるまで無効になります(Pi4B、Pi3B +、Pi3A +)
- ドメインは
Raspberry Pi Configuration
(rc_gui)を介して、raspi-config
またはでcountry=
適切なISO 3166 alpha2国コードを設定することにより設定できます/etc/wpa_supplicant/wpa_supplicant.conf
。
WiFiを使用しており、GUIがFoundationガイドラインに従ってセットアップされている場合
Foundationガイドラインに従ってセットアップされたコマンドラインからWiFiを使用している場合、
これはブロードキャストしないネットワークをセットアップする唯一の方法です。SSID
これは、シリアルコンソールケーブルなどを使用して「ヘッドレス」システムをセットアップするためにも使用できますが、セットアップにモニターとキーボードを借りることができれば非常に簡単です。イーサネットケーブルを使用してPCに接続する別の方法については、以下を参照してください。
Raspbianは2016年5月以降、ブートディレクトリの内容をチェックして、というファイルがあるかどうかを確認し、ファイルwpa_supplicant.conf
をにコピーして/etc/wpa_supplicant
既存のwpa_supplicant.conf
ファイルを置き換えます。ブートディレクトリ内のファイルは削除されます。これは、wpa_supplicant.conf
以下で詳述する設定を使用して、ヘッドレスセットアップを有効にするために使用できます。(おそらくssh
同様に有効にする必要があります。)
IP Address
Piが使用していることだけを知りたい場合はhostname -I
、コマンドラインでEnter キーを押します。
2016年11月リリースの時点で、RaspbianのSSHサーバーはデフォルトで無効になっています。あなたはする必要があります有効に手動で。
sudo raspi-config
ターミナルに入力し、最初にを選択してadvanced options
からに移動しssh
、を押しEnter
て[sshサーバーの有効化または無効化]を選択します。
ヘッドレスセットアップの場合、SDカードのブートパーティションに「ssh」という名前のファイルを拡張子なしで配置することにより、SSHを有効にできます。
最近のRaspbian
/etc/network/interfaces
を実行している場合は、次のようになります。変更した場合は、PUT IT BACKします。(またはStretch
単に削除するだけで、事実上何もしません。)
#ifup(8)およびifdown(8)が使用するinterfaces(5)ファイル #このファイルはdhcpcdで使用されるように書かれていることに注意してください #静的IPについては、/ etc / dhcpcd.confおよび「man dhcpcd.conf」を参照してください #/etc/network/interfaces.dのファイルを含めます: ソースディレクトリ/etc/network/interfaces.d
ファイル/etc/wpa_supplicant/wpa_supplicant.conf
は推奨セットアップ方法で作成/変更されますが、手動でセットアップすることもできます。最近のRaspbianには、raspi-config
SSIDとパスワードを入力するオプションがあります。次のようなものが含まれている必要があります-
ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev
update_config=1
country=AU
network={
ssid="ESSID"
psk="Your_wifi_password"
}
プライベートネットワーク に接続する必要がある(つまり、ブロードキャストしないSSID
)場合は、行scan_ssid=1
を含めますnetwork={⋯}
。
注異なるネットワーク(職場や自宅など)に接続する場合は、複数の
network={⋯}
エントリを含めることができます。複数のネットワークにアクセスでき、特定のネットワークに接続する場合は
priority=100
、network={⋯}
エントリ内に行を含めます。
ネットワークごとに異なる優先度を選択できます。アクセス可能な最も優先度の高いネットワークが選択されます。デフォルトは0です。
使用できる他の多くのオプションがありますman wpa_supplicant.conf
。
Jessieには10-wpa_supplicant
WiFiインターフェースを管理するフックが含まれていないため、wpa_supplicantへのリンクが必要です。これらの設定は、予測可能なネットワークインターフェイス名と互換性がありません。
/etc/network/interfaces
で使用されるジェシーは、次のようになります-
# interfaces(5) file used by ifup(8) and ifdown(8)
# Please note that this file is written to be used with dhcpcd
# For static IP, consult /etc/dhcpcd.conf and 'man dhcpcd.conf'
# Include files from /etc/network/interfaces.d:
source-directory /etc/network/interfaces.d
auto lo
iface lo inet loopback
iface eth0 inet manual
allow-hotplug wlan0
iface wlan0 inet manual
wpa-conf /etc/wpa_supplicant/wpa_supplicant.conf
allow-hotplug wlan1
iface wlan1 inet manual
wpa-conf /etc/wpa_supplicant/wpa_supplicant.conf
注 dhcp in /etc/network/interfaces
を呼び出すと、が無効になり dhcpcd
ます。
Stretch
しばらくの間、他のディストリビューションで使用されている1つの 予測可能なネットワークインターフェイス名を導入しました。
ネットワークインターフェイスの名前は、接頭辞en
—イーサネットまたはwl
— wlanに続いてx
指示MAC
とMAC
eg enxb827eb123456
またはで形成されwlx00c140123456
ます。sdio
ただし、接続されているPi4、Pi3、およびPIZeroWのオンボードWiFiは、名前を使用しますwlan0
これは、複数のネットワークインターフェイスを使用しているユーザーにとって有益な場合がありますが、ほとんどのPiユーザーにとって、単一のイーサネットインターフェイスとWiFiインターフェイスではほとんど違いはありません。以前の名前eth0
とwlan0
はnet.ifnames=0
、のカーネルコマンドラインを渡すと復元できます/boot/cmdline.txt
。
raspi-config
予測可能なネットワークインターフェイス名を有効にするオプションがあります。
1.何らかの不可解な理由により、財団は待望の機能を導入してからわずか3週間後に「イーサネットデバイスの予測可能なネットワークインターフェイス名を無効にする」ことを決定しました。下のオプションがあるAdvanced Options
のraspi-config
は、この設定を切り替えるには。
別の回答をご覧ください静的IPアドレス
dhcpcd
構成Raspbianはデフォルトで、dhcpcd
ネットワークインターフェイスの管理に使用します。これは自動で行われ、ほとんどのユーザーは、ワイヤレスネットワークのSSIDとパスワードを指定するだけで済みます。
dhcpcd
にオプションを入力することにより、動作方法を設定できます/etc/dhcpcd.conf
。参照man dhcpcd.conf
.Thereがオンに良い記事ですdhcpcd
でhttps://wiki.archlinux.org/index.php/dhcpcd
以下に、より一般的な構成の一部を示します。
dhcpcd
DHCPリースが失敗すると、静的プロファイルを内部に構成し、それにフォールバックすることができます。これは、静的プロファイルを「回復」プロファイルとして使用して、常にマシンに接続できるようにするヘッドレスマシンで特に役立ちます。静的プロファイルは、他の静的IPアドレスとして設定されます
#静的プロファイルを定義 プロファイルstatic_eth0 静的ip_address =⋯ 静的ルーター=⋯ 静的domain_name_servers =⋯ #eth0の静的プロファイルへのフォールバック インターフェースeth0 フォールバックstatic_eth0
dhcpcd
インターフェイスの構成を禁止するこれは、他のインターフェイスでの通常の構成を許可しながら、Piがアクセスポイント(他のファイルを使用して構成する必要がある)として機能できるようにするためによく行われDHCP
ます。
denyinterfaces wlan0
ファイルの最後に追加します(ただし、他の追加されたインターフェイス行の上)。
dhcpcd
インターフェイスにゲートウェイを設定するからインターフェイスにデフォルトルート(多くの場合、静的IPアドレスと組み合わせて使用)をインストールしないように指定する場合
ゲートウェイ
dhcpcd
ホストネットワークに依存するインターフェイスを構成できます。これは、アドレス解決プロトコル(ARP)を使用して、DHCP解決を試みる前にMACまたはIPアドレスに基づいてホストをプローブします。
インターフェイスbge0 192.168.0.1のアーピング #私の特定の192.168.0.1ネットワーク プロファイルdd:ee:aa:dd:bb:ee static ip_address = 192.168.0.10 / 24 #一般的な192.168.0.1ネットワーク プロファイル192.168.0.1 static ip_address = 192.168.0.98 / 24
これらの機能を使用しておらず、ネットワークが単純な場合は、ARPプローブを無効にしてDHCPを高速化できます。
うるさい
特定のワイヤレスインターフェイスに異なるwpa_supplicant.confファイルを使用するようにdhcpcdを構成することが可能です。
名前のファイルを作成wpa_supplicant-"$interface".conf
して/etc/wpa_supplicant/
例えばwpa_supplicant-wlan0.conf
のみで使用されますがwlan0
/etc/wpa_supplicant/wpa_supplicant.conf
他の無線インターフェースに使用されます。
Raspbianの最近のバージョン(を使用dhcpcd
)はssh
、link-local
アドレス上で動作することを許可しavahi
(これはzeroconf実装です)、プログラムがローカルネットワークで実行されているホストを検出できるようにします。
これは、Piをコンピューター(イーサネットケーブルを使用)またはローカルネットワークルーターに接続し、IPアドレスを知らなくても接続できることを意味します。
LinuxとOS Xからssh pi@hostname.local
(デフォルトのホスト名はraspberrypi
)で簡単に接続できますssh
。これは一般的なGUI プログラムで動作するはずです。これは、Windowsの一部のバージョンおよび非標準的な方法で.localを使用するネットワークで問題になる場合があります。(https://en.wikipedia.org/wiki/.localを参照)
注.local
解決は、たとえばで常に機能するとは限りませんrsync
。以下はIPを解決する必要があります(bash
スクリプトに含めることができます)
RemotePi=$(getent hosts hostname.local | awk '{ print $1 }')
システムがgetent
、hosts
たとえばmacOS を照会する必要がない場合は、次を使用できます。
RemotePi=$(arp -n hostname.local | awk '{x = $2; gsub(/[()]/, "", x); print x }')
複数のPiがある場合は、各Piに一意のホスト名があることを確認する必要があります。
クロスケーブルを使用できますが、必要はありません(ほとんどの最新のインターフェースは自動的に検出します)。
直接接続の1つの欠点は、Piがインターネットにアクセスできず、日付が設定されないことです。ssh pi@hostname.local sudo date -s$(date -Ins)
接続前に実行することにより、ホストから日付をコピーできます。
このチュートリアルでは、付属のソフトウェアを使用してインターネットにアクセスするための通常のRaspbianインストールのセットアップについて説明します。また、同じネットワーク上の他のコンピューターへの接続についても説明します。
主に、Pi(特にWiFi)を機能させるのに苦労している新規ユーザーを支援することを目的としています。
それはカバーしません:-
- その他のネットワークマネージャー。
- Piで高度なネットワークを実行する(
DHCP
サーバー、トンネリング、VPN、アクセスポイントなど)。- の使用
ipv6
(ただし、ipv6
ネットワークがあればこれは機能します)。- 代替ネットワーク設定。(ネットワークを設定するにはさまざまな方法があります。)
静的IPアドレスの設定に関する質問は、このサイトで最も一般的なものです。非常に多くのチュートリアルがあります(多くの間違った、時代遅れの、または不完全な)。
免責事項
先に進む前に、静的アドレスを設定することはお勧めできないと述べる義務があります。テレコミュニケーションエンジニアはこれを行いません。静的IPアドレスは、ネットワーク管理者の生活の悩みの種になる可能性があります。静的IPアドレスが必要な場合があります。たとえば、DHCPサーバーを実行している場合や、DHCPサーバーのない分離ネットワークで実行している場合です。
とにかく続行することに決めた場合は、正しいことを確認する必要があります。Foundation Networkチュートリアルからの適応
これはDHCPを使用してPi自体で最も簡単に実行できますが、ネットワーク上の任意のコンピューターで実行できますが、他のシステムではコマンドが異なる場合があります。
走る
ip -4 addr show | grep global
次のような出力が得られます。
inet 10.1.1.30/24 brd 10.1.1.255 scope global eth0
inet 10.1.1.31/24 brd 10.1.1.255 scope global wlan0
最初のアドレスはネットワーク上のPiのIPアドレスであり、スラッシュの後の部分はネットワークサイズです。/ 24になる可能性が高いです。
2番目のアドレスは、ネットワークのbrd(ブロードキャスト)アドレスです。
ルーター(またはゲートウェイ)のアドレスを見つける
ip route | grep default | awk '{print $3}'
10.1.1.1
最後に、多くの場合ゲートウェイと同じDNSサーバーのアドレスを書き留めます。
cat /etc/resolv.conf
# Generated by resolvconf
nameserver 10.1.1.1
そして、続くONE次の方法を。(他の方法は、ここでは説明しませんがあります。これらはRaspbianで最も一般的です。)(いずれかの方法でのための適切なネットワークインタフェース名に置き換えeth0
、wlan0
または予測可能なネットワークインタフェース名を。)
接続されていない場合でも、インターフェイス名を検索する場合は、次のコマンドを実行します ls /sys/class/net/
いずれの方法でも、使用されていないIPアドレスを選択する必要があります。理想的には、同じサブネットワーク内で、DHCPサーバーが使用する範囲外です。
/etc/network/interfaces
デフォルトのままにします(上記を参照)。
/etc/dhcpcd.conf
次のように編集します:
Here is an example which configures a static address, routes and dns.
interface eth0
static ip_address=10.1.1.30/24
static routers=10.1.1.1
static domain_name_servers=10.1.1.1
interface wlan0
static ip_address=10.1.1.31/24
static routers=10.1.1.1
static domain_name_servers=10.1.1.1
ip_address
上記のコマンドからのアドレスとサイズ(または同じネットワーク上の別の未使用アドレス)
routers
は、ルーター(またはゲートウェイ)のアドレスです。
domain_name_servers
/etc/resolv.confのDNSアドレスです。(を参照man dhcpcd.conf
)
上の良い記事があるdhcpcd
でhttps://wiki.archlinux.org/index.php/dhcpcdザ・がFallback profile
静的IPに代わるものですが
注意この方法はお勧めできません(DHCPクライアントデーモンを無効にした場合にのみ機能します)。特に、両方のインターフェイスを使用する場合。
Piで静的ネットワークアドレスを構成する /etc/network/interfaces
auto eth0
iface eth0 inet static
address 10.1.1.30
netmask 255.255.255.0
gateway 10.1.1.1
allow-hotplug wlan0
iface wlan0 inet static
address 10.1.1.31
netmask 255.255.255.0
gateway 10.1.1.1
wpa-conf /etc/wpa_supplicant/wpa_supplicant.conf
address
上記のコマンドからのアドレス(または同じネットワーク上の別の未使用アドレス)は、
netmask
255.255.255.0がネットワークサイズに対応します/24
。
gateway
ルーター(またはゲートウェイ)のアドレスです。
を指定することもできますがdns-nameservers
、通常はこれは必要ありません。broadcast
自動的に由来しているaddress
とnetmask
、指定する必要はありません。詳細については、https://wiki.debian.org/NetworkConfigurationを参照してください
どちらか、または両方eth0
、wlan0
または予測可能なネットワークインターフェイス名のいずれかを設定できます
次に、DHCPクライアントデーモンを無効にして、標準のDebianネットワークに切り替えます。
sudo systemctl disable dhcpcd
sudo systemctl enable networking
変更を有効にするために再起動します。
sudo reboot
systemd-analyze
。
static domain_search=example.local
dhcpcd.confメソッドに追加しました。元に戻す/編集/連絡してください。
イーサネット接続の静的IPアドレスの場合:
sudo nano /etc/dhcpcd.conf
ファイルの先頭に次の行を入力します。
interface eth0
static ip_address=192.168.1.XX/24
static routers=192.168.1.1
static domain_name_servers=192.168.1.1
sudo reboot
これは、最近のJessieアップデートで行う必要があります。/etc/network/interfaces
放っておかなければなりません。ブラウザを開き、ルーターアドレス(ほとんどの場合192.168.1.1)を入力し、ホームネットワークをチェックして、Raspberry Piが「静的」として表示されることを確認します。
dhcpcd
いきましたが、他のアドレス範囲ではできないネットマスクを推測したため、一般的にはうまくいきませんでした。man
ページを読んでください。
auto eth0
上記のiface eth0 inet manual
行があることを確認してください/etc/network/interface
。sudo service networking restart
コマンドでネットワークを再起動する
これを行う簡単で簡単な方法:
これにより、固定IPが設定され、sshデーモンが有効になります。
/boot/cmdline.txt
追加ip=192.168.1.20
します。/boot/ssh
ssh pi@192.168.1.20
、パスワードはraspberry
です。使用するパテを ssh経由で接続するには、Windows上で。私はこれを使用して、電源とイーサネットのみで接続されたモニターなしで起動するRaspbian JessieとStretchにアクセスしています。sshシェルでアクセスした後、セットアップを続行できます。
この処理後、Raspberry PIには2つの IPがありました。1つは指定した固定IPから、もう1つはRaspberry Piで実行されているdhcp-clientからです。
ifconfig
固定IPが表示されます。一方、右上の青い矢印アイコンはdhcpd-IPを示しています。
最初にすべきことは、Raspberry piのIPを静的にすることです。したがって、Raspberry piの電源を入れると、アクセスポイント(ホットスポット)に接続する必要があります。
アクセスポイントに接続します。raspberry piのターミナルにifconfigと入力し、そのIPアドレスを下に入力します。私の場合は192.168.43.233でした
dhcpcd.confファイルを編集することから始めます
sudo nano /etc/dhcpcd.conf
一番下までスクロールし、接続(有線または無線)に従ってこの行を最後に追加します。
interface eth0
static ip_address=192.168.0.10/24
static routers=192.168.0.1
static domain_name_servers=192.168.0.1
interface wlan0
static ip_address=192.168.43.233/24
static routers=192.168.0.1
static domain_name_servers=192.168.0.1
Ctrl + xを押して保存し、再起動します。ラズベリーパイの電源を入れると、アクセスポイントに自動的に接続されます。
routers
およびdomain_name_servers
ラインはオプションです。