• Thứ Sáu, 24/12/2010 10:42 (GMT+7)

    Kết nối USB modem 3G trên Linux

    Hào Khôi
    Việc truy cập Internet qua mạng điện thoại di động 3G với thiết bị USB đang ngày càng phổ biến và chỉ cần một thiết bị 3G nhỏ gọn hoặc thẻ ExpressCard, bạn đã có thể vi vu trên mạng mọi lúc, mọi nơi với tốc độ tương đương ADSL.

    Tuy nhiên hiện nay phần lớn các thiết bị USB đều được đóng gói và cung cấp trọn bộ bởi các nhà dịch vụ mạng (Vinaphone, Mobifone, Viettel) và chỉ có phần mềm chạy trên hệ điều hành Windows. Vậy với người dùng các hệ điều hành khác như Linux thì sao? Một băn khoăn hợp lý vì nhiều người có “ấn tượng” về Linux như là hệ điều hành không hỗ trợ nhiều loại thiết bị và không có trình điều khiển thích hợp. Đã có không ít người “đau đầu” khi tìm cách cho thiết bị mạng chạy trên Linux.

    Nhưng bạn hãy yên tâm vì chúng ta sẽ cùng giải quyết nỗi băn khoăn này.

    Trên thực tế, có một điều may mắn cho chúng ta là trình điều khiển các loại USB modem 3G đều được tích hợp sẵn trong nhân Linux các bản Debian. Phổ biến là trình điều khiển “usbserial”. Về lý thuyết, chúng ta chỉ cần cắm thiết bị vào và Linux sẽ tự động nhận ra, chúng ta chỉ cần tạo thông số kết nối của nhà mạng và đã có thể lên mạng bình thường.

    Tuy nhiên, vấn đề nằm ở chỗ khác. Đó là hiện nay đa số các thiết bị USB đóng gói sẵn của nhà mạng đều là loại “không cần đĩa driver”, nghĩa là về thực chất bản thân các thiết bị đó dành một phần nhất định dung lượng bộ nhớ flash nằm trong thiết bị nhằm lưu trữ trình điều khiển của chính thiết bị. Đây gọi là loại usb “lai”. Khi bạn cắm vào Windows, phần bộ nhớ flash này sẽ hiện ra là một ổ đĩa usb nhỏ, chỉ đọc, lưu giữ trình điều khiển của nhà mạng (như D-com của Viettel) và sẽ tự động cài đặt trình điều khiển cho thiết bị này. Sau đó Windows mới nhận ra được đúng thiết bị.

    Trong Linux bạn hoàn toàn không cần thiết (hay nói chính xác là hầu như không thể) dùng được trình điều khiển và phần mềm của nhà mạng vốn dĩ chỉ dành cho Windows. Tuy nhiên vấn đề ở đây là đối với loại USB “lai” này thì mặc định khi cắm vào Linux sẽ chỉ “nhìn thấy” phần bộ nhớ flash nhỏ của nó mà thôi (hiện ra dưới trình điều khiển “usb-storage”, phần thiết bị modem thật sự đã bị “che” đi. Mấu chốt ở đây là làm sao để Linux “nhìn thấy” được phần thiết bị modem “usbserial” của USB.

    Giải pháp ở đây vô cùng đơn giản, bạn chỉ cần cài thêm gói “usb-modeswitch” vào hệ thống của mình. Đối với các hệ thống Ubuntu thì gói này đã có sẵn trong kho phần mềm chính thức. Bạn có thể chạy dòng lệnh như sau:

    $sudo apt-get install usb-modeswitch

    Đây là một gói phần mềm nhỏ với kích thước chưa đến 300kb và cài một lần duy nhất. Sau đó mọi thứ sẽ được hệ thống xử lý ngầm một cách xuyên suốt không cần tác động từ người dùng. Sau đó mỗi khi bạn cắm thiết bị USB vào thì hệ thống sẽ nhận diện đúng cả 2 thiết bị “usb-storage”“usbserial”.

    Vấn đề tiếp theo là thiết lập thông số mạng để kết nối vào mạng di động 3G. Do không dùng phần mềm của nhà dịch vụ mạng nên chúng ta phải tự tay nhập các thông số theo đúng yêu cầu của mạng di động đang sử dụng.

    Tôi xin minh họa từng bước với hệ điều hành Ubuntu 10.04, bản tiếng Việt, usb D-com 3G E1750 và sim của Viettel Telecom. Các hệ khác, usb khác và sim khác cũng tương tự.

    Sau khi cài đặt gói usb-modeswitch, bạn khởi động lại máy để bảo đảm hệ thống hoạt động đúng đắn.

    Cắm USB vào máy rồi quan sát biểu tượng Kết nối mạng trên vùng thông báo (bạn cũng có thể thao tác từ trình đơn Hệ thống > Tùy thích > Kết nối mạng).

    Bạn sẽ thấy như sau:

    Nhìn chuột phải vào biểu tượng, chọn Sửa kết nối. Trong cửa sổ hiện ra bạn sẽ thấy tên thiết bị USB 3G của bạn được chọn sẵn, trong trường hợp E1750 của tôi là “HUAWEI Technology HUAWEI Mobile”. Bạn nhấp Tiếp tục, chọn quốc gia Vietnam và lại nhấn Tiếp. Vào thời điểm bài viết này thì trong ứng dụng này đã có sẵn cấu hình của hầu hết các mạng di động phổ biến trong nước, bạn hãy chọn mạng di động ứng với sim của bạn rồi nhấp Tiếp (tôi chọn Viettel Mobile).

    Ở mục tiếp sẽ hiện ra tên điểm truy cập (APN) của mạng di động đó. Nếu chưa đúng thì bạn hãy chọn sửa lại ở phần chọn Kế hoạch là “Kế hoạch của tôi không được liệt kê ...” và gõ APN của mạng vào ô bên dưới (tôi sửa “v-internet” là APN của dịch vụ Mobile Internet thành “e-connect” là APN của dịch vụ D-com 3G).

    Sau đó nhấn Tiếp và Áp dụng. Cửa sổ Chỉnh sửa thông tin kết nối hiện ra để bạn tinh chỉnh chi tiết hơn về thông số kết nối. Vì kết nối 3G của Viettel không yêu cầu tên người dùng và mật khẩu nên tôi để trống. Số gọi *99# đã đúng. Tôi chỉ đặt sử dụng OpenDNS (208.67.222.222, 208.67.220.220) trong phần Cài đặt Ipv4. Tôi chọn thêm Kết nối tự động. Nếu các bạn sử dụng sim của mạng di động khác vui lòng xem bảng bên dưới cuối bài để nhập vào cho đúng. Sau khi xong, nhấp Áp dụng để lưu thay đổi và đóng cửa sổ này lại.

    Nhấn chuột phải vào biểu tượng và bỏ chọn (nếu có), bảo đảm rằng tùy chọn “Bật mạng không dây di động” không được chọn. 

    Cuối cùng bạn nhấn vào biểu tượng Kết nối mạng, chọn tên kết nối bạn đã tạo hoặc chọn lúc nãy và chờ thiết bị kết nối đến mạng di động đó.

    Đây là hình minh họa kết nối hoàn tất đến mạng di động của Viettel.

    Sau đây là bảng thông số kết nối 3G cho 3 mạng di động phổ biến.

    Chúc các bạn thành công!

    Bài viết có tham khảo http://packages.ubuntu.com/en/lucid/usb-modeswitch

    Mọi ý kiến đóng góp xin vui lòng gửi về địa chỉ mail: nguyenhaokhoi@yahoo.com.vn 

     ViettelMobifoneVinaphone
    APN e-connectm-wapm3-card
    Số điện thoại*99#
    Tên đăng nhập -mmsmms
    Mật khẩu-mmsmms

     

    Từ khóa: Linux, Ubuntu, USB 3G
    ID: A1010_112