Publish: 2021-03-16 | Modify: 2021-03-16
A software router refers to a routing solution that uses a desktop computer or server with software to achieve router functionality through software settings. On the other hand, a hardware router is a specialized hardware device that includes a processor, power supply, and embedded software to provide router functionality as configured. - from Baidu Baike
Recently, I finally transformed my "Zhanmei Mini Host" that has been serving me for nearly 5 years into a software router. I installed iKuai OS (hereinafter referred to as iKuai), embarking on the path of no return for software routers.
Since the Zhanmei Mini Host only has one Gigabit Ethernet port, which is used for dialing the Internet and there are no other ports to connect to the LAN, it is a bit awkward. However, this can be solved. Generally, there are two solutions for single-port Mini Hosts:
Xiaoz has not tried Solution 1, and there is feedback online that single-arm routing is not very stable and can cause some strange issues. So I chose Solution 2 and got a USB wired network card to indirectly achieve dual ports, one for WAN and one for LAN, with the LAN connected to a switch to solve the problem of insufficient ports.
Selection of Software Router Systems
At present, commonly used software router systems include iKuai, ROS, OpenWrt, LEDE, etc., each with its own characteristics. Interested users can search online for more information. After comparing and researching, I chose iKuai, which is said to have good flow control and a simple user interface. I will gradually experience other software router systems in the future.
I initially used Ventoy for installation, but the screen went black as soon as I reached the installation interface. After repeated attempts without success, I don't know if Ventoy does not support iKuai OS or if it's a motherboard issue. Later, I successfully installed it by burning the .iso with UltraISO.
Installing iKuai OS is similar to installing other operating systems. For specific instructions, please refer to the above documentation.
The switch I chose is "TP-Link TL-SG1008D". It has a metal casing, 8 Ethernet ports, and supports Gigabit Ethernet. It is sufficient for home use, although the appearance is a bit ugly. But since it is used for practical purposes, it doesn't matter if it looks ugly, as long as it is stable.
First, here is a screenshot of the iKuai OS backend after installation. The interface is clear and user-friendly.
About Partitioning
After installation, there are only two partitions: a system partition and a log partition. You can perform partitioning operations in the backend by going to System Settings - Disk Management - Disk Partition - Quick Partition. Quick partitioning will not affect the system.
It is recommended to have at least 2 partitions:
About Multi-link Dialing
Currently, I have tested that Chengdu Telecom supports 3 dial-up connections. You can go to Network Settings - Internal and External Network Settings - Hybrid Mode Based on Physical Network Cards - ADSL/PPPoE Dial-up to configure it as shown in the screenshot below.
Then, you can set up the load balancing in Traffic Control - Multi-line Load Balancing. For detailed instructions on multi-line load balancing, please refer to the official documentation: https://www.ikuai8.com/zhic/ymgn/lyym/lkfl/ea195.html
After setting it up, I found that the bandwidth did not accumulate, but rather was distributed. I don't know if it is due to limitations imposed by the Internet service provider or some other issue.
Behavior Log Management
iKuai OS supports behavior log management, which needs to be manually enabled in the backend. After enabling it, you can see the website browsing records and IM online/offline records of devices, as shown in the screenshot below.
In general enterprise situations, company routers are equipped with behavior log management, which is a standard feature of enterprise routers. Therefore, do not browse inappropriate websites on the office network. Your browsing history can be discovered by your supervisors.
Advanced Features
iKuai OS also supports KVM virtual machines and Docker. With these two major features, almost all software you want can run on iKuai OS. However, since it is a software router system, whether the hardware configuration can keep up is another matter. Once it fails, the network will be paralyzed. Personally, I am not particularly inclined to run virtual machines or Docker on routers (after all, I have a NAS).
Currently, my network topology is as follows:
I come from China and I am a freelancer. I specialize in Linux operations, PHP, Golang, and front-end development. I have developed open-source projects such as Zdir, ImgURL, CCAA, and OneNav.