Làm cách nào để thiết lập kết nối không dây với Raspbian Stretch?


8

Một số hướng dẫn tôi thấy đã lỗi thời, nhưng câu trả lời sau có chứa một tập hợp các ghi chú tôi đã sử dụng để thiết lập kết nối không dây tại nhà, trường học (doanh nghiệp) và Ad-Hoc trên Raspberry Pi 3 của tôi.

Câu trả lời:


14

Raspberry Pi 3 (nhân 4.14.30-v7 +)

Bài đăng này là một tập hợp các ghi chú và hướng dẫn tôi đã sử dụng để thiết lập kết nối không dây với Raspberry Pi.

Xin vui lòng cho tôi biết nếu bạn gặp bất kỳ vấn đề.


Thiết lập không đầu

Raspbian hiện đang tìm trong phân vùng khởi động cho một vài tệp để cho phép thiết lập không đầu hoặc kết nối Raspberry Pi với mạng và thiết lập kết nối ssh từ máy bên ngoài mà không cần màn hình, màn hình hoặc chuột.

Sau khi bạn tải hệ điều hành Raspbian vào thẻ micro SD , Ubuntu command:

unzip -p 2018-03-13-raspbian-stretch-lite.zip | sudo dd of=/dev/sdX bs=4M conv=fsync status=progress

Thêm hai tệp vào phân vùng khởi động trước khi di chuyển thẻ SD sang Pi.

  1. SSH phải được bật bằng cách đặt tệp có tên 'ssh', không có bất kỳ tiện ích mở rộng nào, vào phân vùng khởi động của thẻ SD. Điều này sẽ cho phép bạn kết nối từ một thiết bị bên ngoài.
  2. Kết nối mạng phải được xác định
    • thêm tệp có tên "wpa_supplicant.conf" trong phân vùng khởi động và điền thông tin mạng theo hướng dẫn bên dưới.

Ví dụ "wpa_supplicant.conf" cho kết nối nhà:

ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev
update_config=1
country=US

network={
    ssid="NETWORK_NAME"
    psk="password"
}

Bây giờ địa chỉ IP của Pi là gì? Tìm kiếm địa chỉ MAC, tất cả RPi 3 đều có cùng một địa chỉ MAC. (Không hoạt động trên mạng doanh nghiệp, hãy hỏi quản trị viên về quyền riêng tư)

Ubuntu command:

sudo nmap -sn 192.168.1.0/24 | grep -B 2 B8:27:EB

SSH

Tự động tắt trong khi khởi động ban đầu.

Kích hoạt với

sudo raspi-config

Sau đó chọn Interfacing OptionsSSHEnable


Kết nối mạng gia đình

Cách dễ nhất:

sudo raspi-config 

Chọn Network OptionsWi-fisau đó làm theo hướng dẫn trên màn hình.

Cách thủ công:

Chỉnh sửa wpa_s repeatant.conf

sudo nano /etc/wpa_supplicant/wpa_supplicant.conf

Thêm những điều sau:

network={
    ssid="NETWORK_NAME"
    psk="password"
}

Sau đó lưu tập tin


Kết nối mạng doanh nghiệp

Đây là cách tôi kết nối với wifi trường đại học của tôi

Đầu tiên tạo mật khẩu băm và lưu vào tệp (giữ các dấu ngoặc đơn xung quanh mật khẩu của bạn):

echo -n 'YOUR_REAL_PASSWORD' | iconv -t utf16le | openssl md4 > hash.txt

Sau đó chỉnh sửa wpa_supplicant.conf

sudo nano /etc/wpa_supplicant/wpa_supplicant.conf

Thêm những điều sau:

network={
    ssid="NETWORK_NAME"
    proto=RSN
    key_mgmt=WPA-EAP
    group=CCMP TKIP
    identity="YOUR_USERNAME"
    password=hash:5ac87xxxxxxxxxxxxxxxxxxetc
    phase1="peaplabel=0"
    phase2="auth=MSCHAPV2"
}

Để thêm mật khẩu băm:

  1. Di chuyển con trỏ đến nơi bạn muốn đặt văn bản
  2. Nhấn ctrl+ rsau đó chèn tệp hash.txt
    • hash.txt chứa (stdin) = 5ac87xxxxxxxxxxxxxxxxxxetc
    • thay thế "(stdin) =" bằng "hàm băm:"
  3. Lưu các tập tin
  4. Xóa lịch sử bash của bạn

    history -c
    
  5. Xóa hàm hash.txt

    rm hash.txt
    

Quản lý nhiều kết nối

Thêm cờ ưu tiên cho mỗi mạng trong wpa_supplicant.conf

ưu tiên mặc định = 0 (ưu tiên lớn nhất đi trước)

Ưu tiên wpa_supplicant.conf của tôi:

ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev
update_config=1
country=US

network={
    priority=1
    ssid="NETWORK_A"
    psk="password"
}

network={
    priority=2
    ssid="NETWORK_B"
    proto=RSN
    key_mgmt=WPA-EAP
    group=CCMP TKIP
    identity="YOUR_USERNAME"
    password=hash:5ac87xxxxxxxxxxxxxxxxxxetc
    phase1="peaplabel=0"
    phase2="auth=MSCHAPV2"
}

Có nhiều tùy chọn cấu hình hơn, chạy man wpa_supplicant.confcho thông tin.


Mạng Ad-Hoc / Điểm truy cập / Kết nối cầu

Bạn muốn kết nối không dây với pi nhưng không có mạng không dây khả dụng. Sáng tạo của riêng bạn!

Raspberry Pi có thể được thiết lập để phát sóng mạng không dây. Mạng này cho phép bạn kết nối pi, nhưng sẽ không kết nối với internet.

Thiết lập đơn giản từ Pi đến Pi

Trên mỗi Rpi

Sao chép tập tin hiện tại để sao lưu

cp /etc/network/interfaces /etc/network/interfaces.old

Mở tệp để chỉnh sửa

sudo nano /etc/network/interfaces

Dòng duy nhất khác nhau trong tệp sau đây là addressmọi thứ khác phải giống hệt nhau. Và bạn có thể thay đổi tên mạng của mình hoặc thêm mật khẩu

Nối các mục sau vào Rpi A:

auto wlan0
iface wlan0 inet static
    address 192.168.1.1 
    netmask 255.255.255.0
    wireless-channel 1
    wireless-essid MYNETWORK
    wireless-mode ad-hoc

Nối các Rpi B sau:

auto wlan0
iface wlan0 inet static
    address 192.168.1.2 `
    netmask 255.255.255.0
    wireless-channel 1
    wireless-essid MYNETWORK
    wireless-mode ad-hoc

Lưu tệp và thoát khỏi trình chỉnh sửa

Nâng giao diện:

sudo ifup wlan0

Quét các mạng ad-hoc:

iwlist wlan0 scan

Bạn có thể thêm nhiều thiết bị vào mạng, bạn chỉ cần gán cho thiết bị một địa chỉ IP tĩnh mới khác.

Tần số / kênh hoạt động mặc định (2.412 GHz: kênh 1) thường xuyên bị tắc nghẽn. Hãy thử sử dụng một kênh khác trong trường hợp khó khăn.

Thay đổi wireless-channelthành một số khác

Sử dụng sudo iwlist wlan0 scanđể tìm các kênh khác.

src: https://wiki.debian.org/WiFi/AdHoc


Ít đơn giản

Phức tạp hơn nhưng sẽ kết nối với các mạng đã biết và tạo ad-hoc nếu không tìm thấy mạng nào.

Thực hiện theo hướng dẫn này (không có cầu nối ethernet, tôi đã sử dụng thành công này) http://www.raspberryconnect.com/network/item/331-raspberry-pi-auto-wifi-hotspot-switch-no-iNET-routing

hostname -I 

Chạy cái này trên Pi, sau đó tôi kết nối từ địa chỉ IP thứ hai được liệt kê qua ssh pi @ [ipaddr] từ máy chủ Ubuntu của tôi.

Với cầu nối ethernet (tôi chưa thử nghiệm điều này, nhưng từ cùng một tinkerer như ↑) http://www.raspberryconnect.com/network/item/330-raspberry-pi-auto-wifi-hotspot-switch-iNET


LRI BIẾT:

Kết nối Ssh không thành công từ máy chủ đến Pi? chạy với đầu ra dài dòng:

ssh -vvvv pi@raspberrypi.local

Nếu các lệnh cuối cùng trước khi đóng là:

debug1: SSH2_MSG_KEXINIT sent
Connection closed by raspberrypi.local port 22

Hãy thử tạo lại các khóa máy chủ mà chúng có thể bị thiếu hoặc hỏng (thực hiện điều này trên Pi):

sudo rm /etc/ssh/ssh_host_*
sudo dpkg-reconfigure openssh-server 

https://www.raspberrypi.org/forums/viewtopic.php?t=168310


Người giới thiệu

man wpa_supplicant.conf

https://www.raspberrypi.org/forums/viewtopic.php?t=111100

https://www.doc.ic.ac.uk/~ajd/Robotics/RoboticsResource/wifi_setup.txt

https://gist.github.com/chatchavan/3c58511e3d48f478b0c2


Đây là một bài viết tuyệt vời ... có rất nhiều thứ hữu ích ở đây! Gợi ý: lấy tài khoản GitHub và đăng 'công thức' này lên đó.
Seamus

2
Quét bộ đệm arp có một số nhược điểm: bạn chỉ nhìn thấy hàng xóm và thiết bị mong muốn phải được xử lý trước bằng mọi cách. Nếu không thì nó không có trong bộ đệm. Ping địa chỉ quảng bá trước đây có thể hoạt động để giải quyết tất cả hàng xóm nhưng quản trị viên mạng của bạn không thích điều đó! Một thay thế là nmap, ví dụ sudo nmap -sn 192.168.10.0/24 | grep -B 2 B8:27:EBcho hàng xóm.
Ingo

1
Bạn đang viết về bridging. Xin lưu ý rằng bạn không thể thực sự kết nối wifi trên OSI lớp 2 với mức raspi vì giới hạn phần cứng / trình điều khiển.
Ingo

0

Sử dụng chương trình dễ dàng này tôi tìm thấy trên Github: Rasp-Connect - Tập lệnh python dễ dàng để kết nối Raspbian với mạng Wifi bằng Python.

Đây là một tập lệnh Python dễ dàng cấu hình và thiết lập nó cho bạn, bạn chỉ cần chọn loại mã hóa và nhập SSID và mật khẩu. Nó hoạt động rất tốt và cũng hỗ trợ chạy công cụ qua SSH.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.