Bài 20: USB 3G – MiFi

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)
  1. 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
  2. Cài đặt và cấu hình DHCP server (tương tự bài 15)
  3. Cài đặt và cấu hình access point daemon (tương tự bài 15)
  4. 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

Leave a Comment

Filed under Software

Leave a Reply