Sử dụng RPI như một điểm truy cập internet qua mạng 3G là một giải pháp rẻ tiền, dễ cài đặt. Thậm chí có công ty phân phối trọn gói RPI đã được cấu hình sẵn cho MiFi như http://www.pi3g.com
Trong bài 15, chúng ta đã cài đặt RPI thành access point (ethernet + wifi), các trafic được định hướng về ethernet. Trường hợp MiFi (3G + wifi) , mạng 3G thay cho mạng ethernet, các trafic được định hướng về mạng 3G. Cách cài đặt hoàn toàn tương tự, điểm khác biệt là cài đặt sao cho usb 3G được nhận diện như modem và kết nối được internet.
A. Cài đặt USB 3G
Gắn usb 3G vào RPI, chạy lệnh lsusb để tìm Device_Id:Product_Id, kết quả tương tự như sau
Bus 001 Device 002: ID 0424:9514 Standard Microsystems Corp.
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 001 Device 003: ID 0424:ec00 Standard Microsystems Corp.
Bus 001 Device 006: ID 12d1:1456 Huawei Technologies Co., Ltd.
Device id là 12d1 và Product id là 1456.
Chú ý là có thể usb 3G không hoạt động vì không được cấp đủ điện, khi đó phải kết nối usb 3G thông qua usb hub được cấp nguồn riêng.
Mode mặc định của usb 3G là USB Mass Storage Device + CD-ROM + card reader nên ta cần chuyển sang modem. Điều này được thiết kế tự động trong usb-modeswitch nên ta chỉ cần cài module này
sudo apt-get install usb-modeswitch
Chạy kiểm tra hoạt động của usb_modeswitch
sudo usb_modeswitch -v 0x12d1 -p 0x1436 -d
Kết quả nhận được tương tự như sau
Looking for default devices ... found matching product ID adding device Found device in default mode, class or configuration (1) Accessing device 006 on bus 001 ... Getting the current device configuration ... OK, got current device configuration (1) Using first interface: 0x00 Using endpoints 0x01 (out) and 0x82 (in) Not a storage device, skipping SCSI inquiry USB description data (for identification) ------------------------- Manufacturer: HUAWEI Technology Product: HUAWEI Mobile Serial No.: not provided ------------------------- Only detaching storage driver for switching ... Looking for active driver ... OK, driver found ("option") OK, driver "option" detached -> Run lsusb to note any changes. Bye.
B. Cài đặt access point (3G + wifi)
Lệnh ifconfig trả lại kết quả tương tự như sau
eth0 Link encap:Ethernet HWaddr b8:27:eb:xx:xx:xx inet addr:10.x.x.x Bcast:10.x.x.255 Mask:255.255.255.0 UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:1703 errors:0 dropped:1 overruns:0 frame:0 TX packets:518 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:261013 (254.8 KiB) TX bytes:146078 (142.6 KiB) lo Link encap:Local Loopback inet addr:127.0.0.1 Mask:255.0.0.0 UP LOOPBACK RUNNING MTU:65536 Metric:1 RX packets:6 errors:0 dropped:0 overruns:0 frame:0 TX packets:6 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:0 RX bytes:300 (300.0 B) TX bytes:300 (300.0 B) wwan0 Link encap:Ethernet HWaddr 02:50:f3:xx:xx:xx UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:0 errors:0 dropped:0 overruns:0 frame:0 TX packets:0 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:0 (0.0 B) TX bytes:0 (0.0 B)
- Cấu hình wireless adapter với ip tĩnh (tương tự bài 15)
#auto wwan0 #allow-hotplug wwan0 #iface wwan0 inet static #address 10.0.1.20 #netmask 255.255.255.0 #network 10.0.1.0 #gateway 10.0.1.1 allow-hotplug wlan0 iface wlan0 inet static address 10.0.2.1 netmask 255.255.255.0 gateway 10.0.1.1
- Cài đặt và cấu hình DHCP server (tương tự bài 15)
- Cài đặt và cấu hình access point daemon (tương tự bài 15)
- Cấu hình định tuyến IP giữa wireless và 3G
Tương tự bài 15, chỉ sửa vài dòng từ đoạn
…
Bây giờ, đặt RPI trờ thành router qua các dòng lệnh sau
sudo iptables -t nat -A POSTROUTING -o wwan0 -j MASQUERADE
sudo iptables -A FORWARD -i wwan0 -o wlan0 -m state --state RELATED,ESTABLISHED -j ACCEPT
sudo iptables -A FORWARD -i wlan0 -o wwan0 -j ACCEPT
…