Jawaban:
Tutorial ini menjelaskan cara mengkonfigurasi jaringan menggunakan manajer jaringan default dhcpcd termasuk dalam Raspbian sejak 2015/05/05.
Ini berlaku untuk rilis Yayasan Buster Raspbian , Raspbian Stretch , Raspbian Jessie dan Raspbian Wheezy terakhir .
Pengaturan buster identik dengan Stretch.
Jika Anda menggunakan koneksi Ethernet dengan router seharusnya tidak ada konfigurasi yang diperlukan dan itu harus bekerja di luar kotak.
CATATAN Pi inbuilt WiFi Pi3 / Pi Zero W tidak mendukung jaringan 5GHz, dan mungkin tidak terhubung ke Ch 12,13 pada jaringan 2.4GHz sampai domain pengaturan nirkabel diatur.
WiFi pada perangkat berkemampuan 5GHz dinonaktifkan hingga domain pengaturan nirkabel diatur (Pi4B, Pi3B +, Pi3A +)
- Domain dapat diatur melalui
Raspberry Pi Configuration
(rc_gui),raspi-config
atau dengan mengaturcountry=
kode negara ISO 3166 alpha2 yang sesuai di/etc/wpa_supplicant/wpa_supplicant.conf
.
Jika Anda menggunakan WiFi dan GUI diatur dengan mengikuti Panduan Yayasan
Jika Anda menggunakan WiFi dari pengaturan Command Line dengan mengikuti Pedoman Foundation
Ini adalah satu-satunya cara untuk mengatur jaringan yang tidak disiarkan SSID
.
Ini juga dapat digunakan untuk mengatur sistem 'Headless' misalnya menggunakan kabel konsol serial, tetapi jauh lebih mudah jika Anda dapat meminjam monitor dan keyboard untuk pengaturan. Lihat di bawah untuk metode lain yang mungkin menggunakan kabel Ethernet ke PC.
Raspbian , sejak Mei 2016, memeriksa isi direktori boot untuk file yang dipanggil wpa_supplicant.conf
, dan akan menyalin file ke dalamnya /etc/wpa_supplicant
, menggantikan wpa_supplicant.conf
file yang ada yang mungkin ada di sana. File dalam direktori boot kemudian dihapus. Ini dapat digunakan untuk mengaktifkan pengaturan tanpa kepala, menggunakan wpa_supplicant.conf
pengaturan yang dirinci di bawah ini. (Anda mungkin juga ingin mengaktifkannya ssh
.)
Jika Anda hanya ingin tahu IP Address
Pi Anda menggunakan enter hostname -I
pada baris perintah.
Pada rilis November 2016, Raspbian memiliki server SSH dinonaktifkan secara default. Anda harus mengaktifkannya secara manual.
Masukkan sudo raspi-config
di terminal, pilih dulu advanced options
, lalu navigasikan ke ssh
, tekan Enter
dan pilih Aktifkan atau nonaktifkan server ssh.
Untuk pengaturan tanpa kepala, SSH dapat diaktifkan dengan menempatkan file bernama 'ssh', tanpa ekstensi apa pun, ke partisi boot kartu SD.
Jika Anda menjalankan Raspbian baru-baru ini
/etc/network/interfaces
harus seperti di bawah ini. Jika Anda telah mengubahnya, PUT IT KEMBALI. (AtauStretch
hanya menghapusnya - secara efektif TIDAK ADA.)
# interface (5) file yang digunakan oleh ifup (8) dan ifdown (8) # Harap dicatat bahwa file ini ditulis untuk digunakan dengan dhcpcd # Untuk IP statis, lihat /etc/dhcpcd.conf dan 'man dhcpcd.conf' # Sertakan file dari /etc/network/interfaces.d: source-direktori /etc/network/interfaces.d
File /etc/wpa_supplicant/wpa_supplicant.conf
akan dibuat / dimodifikasi dengan metode pengaturan yang direkomendasikan, tetapi dapat diatur dengan tangan. Raspbian terbaru memiliki opsi raspi-config
untuk memasukkan SSID dan Kata Sandi. Seharusnya berisi sesuatu seperti berikut: -
ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev
update_config=1
country=AU
network={
ssid="ESSID"
psk="Your_wifi_password"
}
Jika Anda perlu terhubung ke jaringan pribadi (mis. Tidak ada siaran SSID
) sertakan baris scan_ssid=1
di dalamnya network={⋯}
.
CATATAN Jika Anda ingin terhubung ke jaringan yang berbeda (misalnya di kantor atau di rumah) Anda dapat memasukkan beberapa
network={⋯}
entri.Jika Anda memiliki akses ke beberapa jaringan dan ingin terhubung ke jaringan tertentu, sertakan baris
priority=100
di dalamnetwork={⋯}
entri.
Anda dapat memilih prioritas yang berbeda untuk setiap jaringan, jaringan yang dapat diakses dengan prioritas tertinggi akan dipilih; standarnya adalah 0.
Ada banyak opsi lain yang bisa digunakan lihat man wpa_supplicant.conf
.
Jessie tidak menyertakan 10-wpa_supplicant
kait untuk mengelola antarmuka WiFi, sehingga tautan ke wpa_supplicant diperlukan. Pengaturan ini tidak kompatibel dengan Nama Antarmuka Jaringan yang Dapat Diprediksi.
Yang /etc/network/interfaces
digunakan oleh Jessie harus: -
# 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
CATATAN memanggil dhcp in /etc/network/interfaces
akan menonaktifkan dhcpcd
.
Stretch
memperkenalkan 1 nama antarmuka jaringan yang dapat diprediksi yang telah digunakan dalam distribusi lain selama beberapa waktu.
Antarmuka jaringan akan memiliki nama yang dibentuk dari awalan en
- Ethernet atau wl
- wlan diikuti dengan x
menunjukkan MAC
dan MAC
misalnya enxb827eb123456
atau wlx00c140123456
. WiFi onboard dari Pi4, Pi3 dan PIZeroW yang terhubung sdio
akan menggunakan nama tersebutwlan0
Ini dapat bermanfaat bagi mereka yang menggunakan banyak antarmuka jaringan, namun bagi sebagian besar pengguna Pi, dengan satu antarmuka Ethernet dan WiFi akan membuat sedikit perbedaan. Nama-nama sebelumnya eth0
dan wlan0
dapat dipulihkan jika Anda meneruskan net.ifnames=0
baris perintah kernel /boot/cmdline.txt
.
Ada opsi raspi-config
untuk mengaktifkan nama antarmuka jaringan yang dapat diprediksi.
1. Untuk beberapa alasan yang tidak dapat dipahami, Yayasan memutuskan untuk "Nonaktifkan nama antarmuka jaringan yang dapat diprediksi untuk perangkat Ethernet" hanya 3 minggu setelah memperkenalkan fitur yang telah lama ditunggu-tunggu. Ada pilihan di bawah Advanced Options
dari raspi-config
untuk beralih pengaturan ini.
Lihat jawaban terpisah Alamat IP Statis
dhcpcd
Konfigurasi LanjutanRaspbian, secara default, digunakan dhcpcd
untuk mengelola antarmuka jaringan. Ini otomatis, dan sebagian besar pengguna tidak perlu melakukan apa pun selain menentukan SSID dan kata sandi untuk jaringan nirkabel.
Dimungkinkan untuk mengkonfigurasi cara dhcpcd
kerjanya dengan memasukkan opsi di /etc/dhcpcd.conf
; lihat man dhcpcd.conf
. Ada artikel bagus dhcpcd
di https://wiki.archlinux.org/index.php/dhcpcd
Berikut ini menjelaskan beberapa konfigurasi yang lebih umum: -
Dimungkinkan untuk mengkonfigurasi profil statis di dalam dhcpcd
dan kembali ke sana ketika penyewaan DHCP gagal. Ini berguna terutama untuk mesin tanpa kepala, di mana profil statis dapat digunakan sebagai profil "pemulihan" untuk memastikan bahwa selalu memungkinkan untuk terhubung ke mesin. Profil statis disetel seperti Alamat IP Statis lainnya
# tentukan profil statis profil static_eth0 ip_address statis = ⋯ router statis = ⋯ domain_name_servers statis = ⋯ # fallback ke profil statis di eth0 antarmuka eth0 fallback static_eth0
dhcpcd
konfigurasi antarmukaIni sering dilakukan untuk mengaktifkan Pi untuk bertindak sebagai Access Point (yang perlu dikonfigurasi menggunakan file lain), sambil memungkinkan DHCP
konfigurasi normal pada antarmuka lain.
Tambahkan denyinterfaces wlan0
ke akhir file (tetapi di atas garis antarmuka lainnya yang ditambahkan).
dhcpcd
konfigurasi gateway pada antarmukaJika Anda ingin antarmuka tidak menginstal rute default apa pun (sering digunakan bersama dengan alamat IP statis) tentukan
tidak
dhcpcd
dapat mengkonfigurasi antarmuka yang tergantung pada jaringan host. Ini menggunakan Address Resolution Protocol (ARP) untuk menyelidiki host berdasarkan MAC atau alamat IP sebelum mencoba resolusi DHCP.
antarmuka bge0 arping 192.168.0.1 # Jaringan 192.168.0.1 khusus saya profil dd: ee: aa: dd: bb: ee ip_address statis = 192.168.0.10 / 24 # Jaringan 192.168.0.1 generik profil 192.168.0.1 ip_address statis = 192.168.0.98 / 24
Anda dapat mempercepat DHCP dengan menonaktifkan pencarian ARP jika Anda tidak menggunakan fitur-fitur ini dan memiliki jaringan yang sederhana.
noarp
Dimungkinkan untuk mengkonfigurasi dhcpcd untuk menggunakan file wpa_supplicant.conf yang berbeda untuk antarmuka nirkabel tertentu.
Buat sebuah file bernama wpa_supplicant-"$interface".conf
dalam /etc/wpa_supplicant/
misalnya wpa_supplicant-wlan0.conf
hanya akan digunakan olehwlan0
/etc/wpa_supplicant/wpa_supplicant.conf
akan digunakan untuk antarmuka nirkabel lainnya.
Versi terbaru dari Raspbian (yang digunakan dhcpcd
) memungkinkan ssh
untuk link-local
mengatasi alamat dan avahi
(yang merupakan implementasi zeroconf) memungkinkan program untuk menemukan host yang berjalan di jaringan lokal.
Ini berarti Anda dapat menghubungkan Pi ke Komputer (dengan kabel Ethernet) atau router jaringan lokal dan terhubung tanpa mengetahui alamat IP.
Anda dapat dengan mudah terhubung dari Linux dan OS X dengan ssh pi@hostname.local
(nama host default adalah raspberrypi
) Ini harus bekerja dengan ssh
program GUI populer . Ini terkadang bermasalah dengan beberapa versi Windows dan jaringan yang menggunakan .local dengan cara yang tidak standar. (Lihat https://en.wikipedia.org/wiki/.local )
CATATAN CATATAN .local
tidak selalu berfungsi misalnya dalam rsync
. Yang berikut ini harus menyelesaikan IP (dan dapat dimasukkan dalam bash
skrip)
RemotePi=$(getent hosts hostname.local | awk '{ print $1 }')
Jika sistem Anda tidak perlu getent
menanyakan hosts
mis. MacOS Anda dapat menggunakan yang berikut: -
RemotePi=$(arp -n hostname.local | awk '{x = $2; gsub(/[()]/, "", x); print x }')
Jika Anda memiliki beberapa Pi, Anda perlu memastikan setiap Pi memiliki nama host yang unik.
Anda dapat menggunakan kabel crossover, tetapi Anda tidak memerlukannya (sebagian besar antarmuka modern secara otomatis mendeteksi).
Salah satu kelemahan dari koneksi langsung adalah bahwa Pi tidak akan memiliki akses Internet dan tanggal tidak akan ditetapkan. Anda dapat menyalin tanggal dari host dengan menjalankan ssh pi@hostname.local sudo date -s$(date -Ins)
sebelum koneksi.
Tutorial ini adalah tentang menyiapkan instalasi Raspbian normal untuk mengakses internet menggunakan perangkat lunak yang disertakan. Ini juga mencakup koneksi ke komputer lain di jaringan yang sama.
Ini terutama ditujukan untuk membantu pengguna baru yang berjuang agar Pi (terutama WiFi) mereka berfungsi.
Ini TIDAK mencakup: -
- Manajer Jaringan Lainnya.
- Menjalankan jaringan lanjutan di Pi (mis.
DHCP
Server, Tunneling, VPN, Access Point).- Penggunaan
ipv6
(meskipun jika Anda memilikiipv6
jaringan ini harus bekerja).- Pengaturan jaringan alternatif. (Ada banyak cara pengaturan jaringan.)
Pertanyaan tentang pengaturan Alamat IP Statis adalah yang paling umum di situs ini. Ada sangat banyak tutorial (banyak yang salah, usang atau tidak lengkap).
Penolakan
Sebelum melanjutkan, saya merasa berkewajiban untuk menyatakan bahwa pengaturan alamat statis TIDAK dianjurkan. Insinyur Telekomunikasi tidak melakukan ini. Alamat IP Statis dapat menjadi kutukan kehidupan Administrator Jaringan. Ada situasi di mana Alamat IP Statis diperlukan misalnya jika Anda menjalankan server DHCP, atau berjalan pada jaringan yang terisolasi tanpa server DHCP.
Jika Anda tetap ingin melanjutkan, Anda harus memastikan Anda melakukannya dengan benar. Diadaptasi dari Tutorial Jaringan Fondasi
Ini paling mudah dilakukan dengan Pi itu sendiri, menggunakan DHCP, tetapi dapat dilakukan pada komputer mana saja di jaringan Anda, meskipun perintahnya mungkin berbeda pada sistem lain.
Lari
ip -4 addr show | grep global
yang seharusnya menghasilkan output seperti:
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
Alamat pertama adalah alamat IP Pi Anda di jaringan, dan bagian setelah slash adalah ukuran jaringan. Kemungkinan besar milik Anda akan menjadi / 24.
Alamat kedua adalah alamat brd (broadcast) jaringan.
Temukan alamat router Anda (atau gateway)
ip route | grep default | awk '{print $3}'
10.1.1.1
Terakhir catat alamat server DNS Anda, yang seringkali sama dengan gateway Anda.
cat /etc/resolv.conf
# Generated by resolvconf
nameserver 10.1.1.1
Kemudian ikuti SATU dari metode berikut. (Ada metode lain yang tidak didokumentasikan di sini. Ini adalah yang paling umum pada Raspbian.) ( Dalam metode mana pun ganti nama antarmuka jaringan yang sesuai untuk eth0
, wlan0
atau nama antarmuka jaringan yang dapat diprediksi . )
Jika Anda ingin menemukan nama antarmuka, meskipun tidak terhubung, jalankan perintah berikut ls /sys/class/net/
Dalam metode mana pun Anda harus memilih alamat IP yang tidak digunakan; idealnya di luar rentang yang digunakan oleh server DHCP Anda, dalam sub-jaringan yang sama.
Biarkan /etc/network/interfaces
default-nya (seperti di atas).
Edit /etc/dhcpcd.conf
sebagai berikut: -
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
adalah alamat dan ukuran dari perintah di atas (atau alamat lain yang tidak digunakan pada jaringan yang sama),
routers
adalah alamat router Anda (atau gateway).
domain_name_servers
adalah alamat DNS dari /etc/resolv.conf. (lihat man dhcpcd.conf
)
Ada artikel bagus dhcpcd
di https://wiki.archlinux.org/index.php/dhcpcd Ini Fallback profile
adalah alternatif untuk IP statis
CATATAN Metode ini TIDAK disarankan (dan hanya berfungsi jika Anda menonaktifkan daemon klien DHCP), terutama jika Anda berencana untuk menggunakan kedua antarmuka.
Konfigurasikan alamat tambahan jaringan statis pada Pi Anda di /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
adalah alamat dari perintah di atas (atau alamat lain yang tidak digunakan pada jaringan yang sama),
netmask
255.255.255.0 sesuai dengan ukuran jaringan /24
.
gateway
adalah alamat router Anda (atau gateway).
Anda juga dapat menentukan dns-nameservers
, tetapi ini umumnya tidak perlu. Secara broadcast
otomatis berasal dari address
dan netmask
dan tidak perlu ditentukan. Untuk detail lebih lanjut lihat https://wiki.debian.org/NetworkConfiguration
Anda dapat mengatur salah satu atau keduanya eth0
, wlan0
atau salah satu nama antarmuka jaringan yang dapat diprediksi
Kemudian nonaktifkan daemon klien DHCP dan alihkan ke jaringan Debian standar :
sudo systemctl disable dhcpcd
sudo systemctl enable networking
Mulai ulang agar perubahan diterapkan:
sudo reboot
systemd-analyze
.
static domain_search=example.local
metode dhcpcd.conf. Jangan ragu untuk mengembalikan / mengedit / menghubungi saya.
Untuk alamat IP statis pada koneksi Ethernet:
sudo nano /etc/dhcpcd.conf
Ketik baris berikut di bagian atas file:
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
Ini perlu dilakukan untuk pembaruan Jessie baru-baru ini. /etc/network/interfaces
harus dibiarkan sendiri . Buka browser Anda dan masukkan alamat router Anda (192.168.1.1 untuk sebagian besar) dan periksa jaringan rumah Anda untuk memastikan Raspberry Pi muncul sebagai 'Static'.
dhcpcd
menyimpulkan netmask, yang tidak dapat untuk rentang alamat lainnya. Baca man
halamannya.
auto eth0
atas iface eth0 inet manual
dalam /etc/network/interface
file Anda . Mulai ulang jaringan melalui sudo service networking restart
perintah
Metode pendek dan sangat mudah bagaimana melakukan ini dengan:
Ini akan menetapkan IP tetap dan mengaktifkan daemon ssh:
/boot/cmdline.txt
dan tambahkan ip=192.168.1.20
ke akhir baris./boot/ssh
ssh pi@192.168.1.20
kata sandinya raspberry
. Gunakan Putty pada Windows untuk terhubung melalui ssh.Saya menggunakan ini untuk mengakses Jessie Raspbian dan Peregangan yang melakukan booting tanpa monitor yang terpasang, hanya dengan daya dan ethernet. Setelah mengaksesnya dengan ssh shell saya dapat melanjutkan pengaturan saya.
Setelah perawatan ini, Raspberry PI memiliki dua IP: Satu dari IP tetap yang Anda tentukan dan satu dari dhcp-client yang berjalan di Raspberry Pi.
ifconfig
akan menunjukkan IP tetap kepada Anda. Sedangkan panah biru-Ikon di kanan atas menunjukkan dhcpd-IP.
Hal pertama yang harus Anda lakukan adalah membuat IP Raspberry pi Anda statis. Sehingga setiap kali Anda menyalakan Raspberry pi Anda harus terhubung ke titik akses Anda (Hotspot).
Hubungkan ke titik akses Anda. Ketik ifconfig di terminal raspberry pi dan masukkan alamat IP di bawah ini, dalam kasus saya adalah 192.168.43.233
Mulailah dengan mengedit file dhcpcd.conf
sudo nano /etc/dhcpcd.conf
Gulirkan semuanya ke bawah dan tambahkan baris ini di bagian akhir sesuai koneksi Anda (kabel atau nirkabel).
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
Tekan Ctrl + x untuk menyimpan dan reboot. Sekarang aktifkan pi raspberry Anda dan secara otomatis akan terhubung ke titik akses Anda.
routers
dandomain_name_servers
adalah opsional jika Anda tidak ingin mengatur perutean melalui antarmuka itu.