💡 Theo đội ngũ RetroLab, dự án này không chỉ là một chuyến du hành về quá khứ mà còn là một bài học thực tế vô cùng giá trị về cách thức hoạt động của các mạng máy tính từ cơ bản đến phức tạp. Nó cho thấy sự sáng tạo không giới hạn của cộng đồng công nghệ và cách chúng ta có thể kết nối những công nghệ tưởng chừng đã lỗi thời với thế giới hiện đại.
Năm ngoái, tôi đã may mắn bổ sung chiếc máy tính Tangerine iBook G3 clamshell nguyên bản của dì vào bộ sưu tập những chiếc Mac cũ của mình. Đây là một mẫu máy tính mang tính biểu tượng, đánh dấu sự khởi đầu của một kỷ nguyên mới trong công nghệ không dây.
Chiếc iBook G3 này được trang bị một thẻ AirPort – một phụ kiện trị giá 99 USD do Apple sản xuất, mở ra kỷ nguyên Wi-Fi. iBook G3 là chiếc laptop tiêu dùng đầu tiên có ăng-ten Wi-Fi tích hợp và là cách rẻ nhất để đưa một máy tính lên mạng không dây 802.11. Wi-Fi vào năm 1999 (khi AirPort ra mắt) đạt tốc độ tối đa 11 Mbps, và thực tế chỉ khoảng một nửa con số đó trong điều kiện sử dụng thông thường. Điều này khá tương đồng với tốc độ dial-up thời bấy giờ, gợi cảm hứng cho một dự án độc đáo: mô phỏng một ISP quay số (dial-up ISP) cục bộ.
Trạm gốc AirPort Base Station bao gồm một cổng Ethernet 10base-T (dành cho số ít người có quyền truy cập băng thông rộng) cùng với một modem quay số 56K. Hầu hết người dùng không dây vào năm 1999 vẫn đang sử dụng AOL hoặc một ISP quay số khác. Tôi đã mua một AirPort Base Station thế hệ đầu tiên đã qua sử dụng từ nhiều năm trước cho một dự án không liên quan. Vì vậy, tôi quyết định thử thách bản thân để xem liệu mình có thể vận hành ISP quay số cục bộ của riêng mình bằng Raspberry Pi – và sau đó kết hợp tốc độ dial-up với Wi-Fi 802.11b!
Phần Cứng Cần Thiết
Hệ thống điện thoại cũ (POTS - Plain Old Telephone System) rất khó để mô phỏng. Bạn không thể chỉ cắm một modem vào một modem khác. Vì vậy, ngoài một modem cho 'Pi ISP' của mình, tôi cần một bộ mô phỏng đường dây điện thoại.
Đây là danh sách phần cứng được lựa chọn để xây dựng ISP này:
- SBC (Single Board Computer): Raspberry Pi 3, 4, hoặc 5.
- Phone Line Simulator (Bộ mô phỏng đường dây điện thoại): Viking DLE-200B Two-Way Line Simulator.
- Modem: StarTech.com 56K USB Dial-up Modem.
Bạn cũng có thể cần một vài dây điện thoại để kết nối mọi thứ. Cắm modem USB vào SBC, sau đó cắm dây điện thoại giữa modem và bộ mô phỏng đường dây điện thoại. Sau đó, cắm một máy tính khác (trong trường hợp này là iBook G3) vào giắc cắm điện thoại khác trên bộ mô phỏng đường dây điện thoại. Để giảm âm lượng và tối ưu hóa tốc độ kết nối, bạn có thể điều chỉnh công tắc DIP #3 lên vị trí 'UP'.
Với thiết lập này, giả sử bạn chưa thay đổi bất kỳ cài đặt mặc định nào khác trên DLE-200B, bất kỳ modem nào nhấc máy sẽ đổ chuông ở đường dây kia một số lần cho đến khi đầu xa nhấc máy hoặc bỏ qua cuộc gọi.
Nếu bạn muốn thêm phần thú vị, bạn có thể bổ sung một chiếc điện thoại kiểu chuông cổ điển. Cắm giắc 'Line' vào bộ mô phỏng đường dây điện thoại và giắc 'Data' vào modem của Pi. Với thiết lập này, bất cứ khi nào máy tính gọi vào ISP, mọi tiếng chuông sẽ tạo ra một tiếng chuông vật lý lớn, rõ ràng trên điện thoại trước khi modem ISP nhấc máy – điều này rất hữu ích cho việc gỡ lỗi!
Phần Mềm
Trên Raspberry Pi, chúng ta sẽ sử dụng hai công cụ Linux chính là mgetty và PPP:
- mgetty ("modem get tty") sẽ xử lý các cuộc gọi qua modem và thương lượng với các modem từ xa. Khi kết nối được thiết lập, nó sẽ chuyển giao kết nối cho PPP.
- PPP (Point-to-Point Protocol) sẽ xác thực máy tính từ xa, sau đó cấu hình một cầu nối mạng giữa hai máy tính, cho phép máy tính từ xa hoạt động như thể nó đang ở trên mạng cục bộ.
Để đơn giản hóa quá trình cấu hình, một dự án Pi ISP trên GitHub cung cấp một Ansible playbook có thể tự động cấu hình mọi thứ. Khi playbook này được chạy trên Raspberry Pi (hoặc bất kỳ máy tính nào chạy Debian), nó sẽ tự động bắt đầu lắng nghe tiếng chuông trên đường dây, giả sử bạn đã kết nối modem. Khi bạn quay số từ một modem khác (không cần số điện thoại nếu sử dụng DTE-200B), bạn có thể theo dõi quá trình thương lượng kết nối của daemon PPP.
Bạn thậm chí có thể dừng mgetty và chạy minicom -D /dev/ttyACM0 để tương tác thủ công với modem, sử dụng các lệnh AT commands, như ATA để trả lời cuộc gọi.
Internet Với Tốc Độ 33.6 kbps
Tôi đã có thể thiết lập kết nối ở tốc độ 33.6K trong hầu hết thời gian. Đôi khi, kết nối không đồng bộ đúng cách, và vấn đề này được khắc phục bằng cách điều chỉnh tốc độ tối đa cho phép bằng lệnh AT+MS bên trong init-chat. Tốc độ này là tối đa bạn có thể đạt được với POTS – bạn phải chuyển sang kỹ thuật số để đạt 56K. Ngay cả với các hệ thống điện thoại cổ điển hàng đầu, việc vượt quá 44K cũng gặp khó khăn. Rất có thể bạn sẽ có kết nối ổn định hơn ở 28.8K hoặc thấp hơn.
Nhưng 33.6K là đủ để hồi tưởng lại kỷ niệm dial-up cuối những năm 90. Tốc độ tải về chỉ khoảng 2.8 KB/giây, khiến tôi nhớ lại những lần phải đợi đến tối, quay số từ máy tính, sau đó kích hoạt một số phần mềm để tải về qua đêm. Việc tải xuống vào ban ngày quá rủi ro, vì thường sẽ có ai đó (thường là chị tôi) nhấc điện thoại để gọi bạn bè. Hầu hết các lượt tải xuống sẽ không thể tiếp tục một cách suôn sẻ sau khi bị gián đoạn!
Trên một máy tính cũ, hầu hết các trang web hiện đại (bao gồm cả trang bạn đang đọc) sẽ không tải được. Các trình duyệt cũ như Internet Explorer hoặc Netscape Communicator không có chứng chỉ TLS cập nhật – chứ đừng nói đến hỗ trợ mã hóa cần thiết để sử dụng chúng.
Nhưng Pi ISP của tôi có một "át chủ bài": Macproxy Classic. Đây là một máy chủ proxy cục bộ nằm giữa máy tính cũ và Internet hiện đại, dịch các trang web thành một cấu trúc cơ bản hơn mà các máy tính cổ điển có thể xử lý. Proxy này loại bỏ CSS, Javascript và các thẻ HTML hiện đại, sau đó xuất ra một thứ mà các trình duyệt cũ và máy tính chậm hơn có thể hiển thị.
Sau khi bật hỗ trợ proxy trong Internet Explorer 5:
Và giờ đây, tôi có thể duyệt trang web của chính mình, trên một chiếc iBook từ năm 1999, chạy Internet Explorer 5:
Tuy nhiên, việc duyệt Internet qua kết nối dial-up trực tiếp, với iBook được nối dây vào bộ mô phỏng đường dây điện thoại, đã thú vị, nhưng điều thú vị hơn nữa là trải nghiệm hoàn toàn không dây.
Quay Số Qua Wi-Fi
Một phần lý do để tôi thực hiện toàn bộ cuộc phiêu lưu này là việc chi hơn 200 USD để tân trang pin cho chiếc iBook này, nhằm đưa nó trở lại thời lượng pin 6+ giờ ban đầu.
Không giống như các laptop hiện đại, nhiều chiếc máy tính "cục gạch" cuối thế kỷ này sử dụng các cell pin 18650 kích thước đầy đủ, khiến chúng dễ dàng phục hồi đáng ngạc nhiên – miễn là bạn có thể cắt mở vỏ nhựa và có một máy hàn tab pin! Tôi đã gửi pin đi tân trang vì không muốn tự mình xử lý tiềm năng cháy nổ của pin lithium-ion. Mặc dù không rẻ, nhưng điều này đáng giá để trải nghiệm cảm giác sử dụng chiếc laptop Wi-Fi đầu tiên vào năm 1999 – mà không bị ràng buộc vào bộ sạc yo-yo của iBook.
Tôi đã có thể thử nghiệm iBook trong nhiều giờ, điều này rất hữu ích, vì trạm gốc AirPort cũ mà tôi đang thử nghiệm dường như có vấn đề về độ ổn định – đặc biệt nếu tôi cắm nó hơn một giờ mỗi lần. Có lẽ đây là một hệ quả khác của sự ám ảnh của Steve Jobs với hình thức hơn là khả năng tản nhiệt. Steve Jobs đã tham gia vào nhiều quyết định thiết kế, nơi quạt bị loại bỏ hoặc thiết kế 'hộp kín' được chọn thay vì thông gió tốt hơn, vì lý do thẩm mỹ và tiếng ồn. Ngay cả khi mới, điều này cũng gây ra vấn đề trên một số máy Mac và phụ kiện của Apple.
Apple đã làm rất tốt tiện ích AirPort Admin Utility ngay từ đầu – trên thực tế, xuyên suốt dòng sản phẩm AirPort của họ, họ đã duy trì những gì tôi nghĩ là giao diện quản lý Access Point tốt nhất, có lẽ cho đến ngày nay. Trong khi các bộ định tuyến không dây khác thường có hàng chục menu khác nhau, khiến việc thay đổi cài đặt DNS trở thành một mớ hỗn độn, Apple đã tổ chức các cài đặt quan trọng một cách trực quan, có lẽ chỉ có thiết bị Ubiquiti là có thể sánh kịp.
Một điều cuối cùng tôi đã thử nghiệm là WayBack Machine Extension của Macproxy Classic: bạn có thể truy cập web.archive.org (khi proxy đang hoạt động) và bật một loại 'cỗ máy thời gian' cho trình duyệt của mình. Chọn một ngày, sau đó duyệt đến bất kỳ URL nào, và tiện ích mở rộng sẽ truy xuất URL đó vào ngày đó trong lịch sử, miễn là nó tồn tại trong WayBack Machine.
Ví dụ, trang web của Apple vào cuối tháng 7 năm 1999:
Là một bài kiểm tra cuối cùng cho thiết lập dial-up không dây mới của mình, tôi đã cắm một thẻ Lucent WaveLAN PC Card cũ (cùng loại cung cấp năng lượng cho AirPort Base Station gốc) vào một chiếc PowerBook G3 mà tôi thừa kế từ một người dì khác. Nó hoạt động rất tốt và cảm giác thật tuyệt khi có thêm không gian màn hình mà chiếc laptop Apple cấp 'Pro' thời đó mang lại.
Kết Luận
Nhiều người đôi khi hỏi tại sao tôi lại thực hiện những dự án 'vô nghĩa' như thế này. Một phần tất nhiên là vì hoài niệm. Và có lẽ để biện minh cho việc chấp nhận tất cả những thiết bị cũ này.
Nhưng một lý do lớn là nó giúp tôi học hỏi. Tôi chưa bao giờ làm việc với mgetty hay PPP trong Linux, và việc thấy cách bắt tay modem hoạt động ở cấp độ phần mềm, hoặc cách kết nối mạng ppp0 được thiết lập, đã giúp tôi hiểu thêm về cả các kết nối hiện đại như VPN. Hơn nữa, tôi còn học được cách modem sử dụng QAM (Quadrature Amplitude Modulation) – và điều này lại tăng cường hiểu biết của tôi về cách QAM hoạt động với Wi-Fi hiện đại để mang lại cho chúng ta băng thông gigabit, mở rộng dựa trên những kỹ thuật đã được phát triển từ nhiều năm trước.
Có vẻ như việc thu thập và phục hồi máy tính cũ đã trở thành cuộc khủng hoảng tuổi trung niên của tôi. Ban đầu tôi tự nhủ sẽ chỉ giữ một giá đầy máy tính. Giờ đây, tôi có nhiều thế hệ Mac, một vài PC, vài bộ ngăn kéo chứa phụ tùng, thùng để làm sạch, trạm sửa chữa, vài đơn vị hiến tặng bị hỏng... tôi đã tự dấn thân vào những gì đây?!
Nguồn: Hacker News - https://www.jeffgeerling.com/blog/2026/build-your-own-dial-up-isp-with-a-raspberry-pi/






