Ðề: Raspberry pi toàn tập từ A-Z
Tất cả những điều bạn ghi ra đây với ng mới tập linux như mình cũng phải năm bảy ngày mình mới thực hiện dc. Dù sao thì cũng cảm ơn bạn nhiều. Về phần mình cài đi cài lài cái wheezy-raspbian 2013 mà vẫn ko co cái ip. Mình xóa đi rồi. Đang down cái phiên bản 2012 về cài thử. IDM nó báo 20 tiếng bạn đủ biết mạng ở đây như thế nào rồi đấy... Trưa nay mình có down cái Advanced IP Scanner cắm cái thẻ chạy raspbmc vào thì tìm dc ip. Đã ssh dc nhưng vẫn chưa tìm dc cách nào để nó nhận dc cái d-com. Thực ra mình vẫn thích Raspbian hơn. Giò chỉ chơ down xong là làm theo bạn thôi. Cảm ơn bạn nhiều...Control Panel -> Network and Internet -> Network Connections
Double click lên Internet icon -> Cuộn xuống, double click "Internet protocol version 4"
Use the following IP address
- IP address: 192.168.0.1 (hay 169.254.1.1)
- Subnet mask: 255.255.255.0
OK
Trong cmdline.txt thêm ip=192.168.0.10 (hay ip=169.254.1.10). Nói chung dùng dãy IP 192.168.x.x hay 169.254.x.x, IP trong máy tính và trong cmdline.txt cùng dãy IP và khác nhau.
Sau khi cài đặt được IP tĩnh cho rPI thì xóa cách cài đặt IP tạm này đi (cả trên máy tính và cmdline.txt)
Đặt IP tĩnh cho rPI
Trên máy tính, mở cửa sổ cmd, gõ lệnh ipconfig, xem IP Address và Default Gateway
Chọn một IP tĩnh cho rPI sao cho không trùng với các IP đã dùng trong mạng
Trên rPI, sửa file interfaces
Mã:nano /etc/network/interfaces
ghi nội dung sau đây
Mã:auto lo iface lo inet loopback auto eth0 allow-hotplug eth0 iface eth0 inet static address *IP*tĩnh*cho*rPI* netmask 255.255.255.0 gateway *Default*Gateway*
Đặt IP tĩnh cho LAN và WiFi của rPI
Thông số để cài đặt:
- IP tĩnh cho LAN của rPI (thí dụ: 192.168.1.100)
- LAN Gateway (thí dụ: 192.168.1.1)
- Wifi Gateway (thì dụ: 192.168.2.1)
- ID của USB Wifi (dùng lệnh lsusb để xem)
- ID của USB 3G (dùng lệnh lsusb để xem)
Trong Windows, gõ ipconfig để xem IP address v4 có dạng gì và chọn IP tĩnh của rPI thuộc dạng này (thí dụ 192.168.1.100). Ghi nhớ LAN Gateway (thí dụ 192.168.1.1)
Chọn Wifi gateway thuộc lớp mạng con, thí dụ 192.168.2.1
Dùng các thông số trên để cài đặt rPI như access point (hostapd + udhcpd hay hostapd + isc-dhcp-sever).
Các tình huống sau đây có thể xảy ra cho rPI
- Cắm dây LAN (mạng LAN)
- Cắm USB 3G (mạng WAN)
- Cắm USB Wifi (mạng LAN)
- Cắm dây LAN + USB Wifi (access point)
- Cắm USB 3G + USB Wifi (access point)
Giả định đã cài đặt rPI chạy đúng trong mỗi trường hợp trên, file autonet.sh sau đây giúp cấu hình mạng cho rPI tùy theo thiết bị mạng được cắm vào (các canh lề đầu dòng có thể không đẹp nhưng không nên sửa vì có thể sai cú pháp here doc)
Mã:#!/bin/bash ### BEGIN INIT INFO # Provides: autonet # Required-Start: # Required-Stop: # Default-Start: 2 3 4 5 # Default-Stop: 0 1 6 # Short-Description: Auto config network # Description: LNT <[email protected]> ### END INIT INFO #IP of RPI ADDR=[COLOR="#FF0000"]*IP*Tĩnh*của*rPI*[/COLOR] #Netmask NMSK="255.255.255.0" #Gateway GWAY=[COLOR="#FF0000"]*LAN*Gateway*[/COLOR] #Wifi Gateway APADDR=[COLOR="#FF0000"]*WIFI*Gateway*[/COLOR] IDWIFI=[COLOR="#FF0000"]*ID*USB*WIFI*[/COLOR] ID3G=[COLOR="#FF0000"]*ID*USB*3G*[/COLOR] LSUSB=`lsusb` LAN=`cat /sys/class/net/eth0/carrier|sed -e 's/^ *//g' -e 's/ *$//g'` WIFI=`echo $LSUSB|grep -c $IDWIFI` USB3G=`echo $LSUSB|grep -c $ID3G` #LAN if [ $LAN -ne 0 ]; then cat > /etc/network/interfaces <<EOF auto lo iface lo inet loopback auto eth0 allow-hotplug eth0 iface eth0 inet static address $ADDR netmask $NMSK gateway $GWAY EOF #Wifi if [ $WIFI -ne 0 ]; then cat >> /etc/network/interfaces <<EOF iface wlan0 inet static address $APADDR netmask $NMSK up iptables-restore < /etc/iptables.ipv4.nat EOF fi #noLAN elif [ $USB3G -ne 0 ]; then #Wifi if [ $WIFI -ne 0 ]; then cat > /etc/network/interfaces <<EOF iface wlan0 inet static address $APADDR netmask $NMSK up iptables-restore < /etc/iptables.ipv4.nat EOF fi else #Wifi if [ $WIFI -ne 0 ]; then cat > /etc/network/interfaces <<EOF auto lo iface lo inet loopback iface wlan0 inet manual wpa-roam /etc/wpa_supplicant/wpa_supplicant.conf iface default inet static address $ADDR netmask $NMSK gateway $GWAY EOF fi fi sleep 1 if [[ $NET -ne 0 ]]; then ifdown eth0 && ifup eth0 fi if [[ $USB3G -ne 0 ]]; then if [[ $NET -eq 0 ]]; then /etc/init.d/auto3g.sh start fi fi if [[ $WIFI -ne 0 ]]; then ifdown wlan0 && ifup wlan0 fi