我的硬件
聯想3代小主機
i5 3470T 35瓦(低功耗是24小時運行基礎) VT/x(ESXI虛擬化必須,請在BIOS開啟) VT/d(硬件直通必須,請在BIOS開啟)
這個坑是留給小白的,很多很老的cpu不帶VT/x虛擬化支持,切莫貪圖便宜。很多低端cpu不帶VT/d硬件直通支持,切莫自作聰明隨意選擇,可以去ark.intel.com自己找想要的cpu,當然錢閑的蛋疼就買越強越好。
內存至少8G
硬盤最好SSD,啟動速度快點。
有一個自帶網口,加裝一個從MiniPCI引出
第一步 ESXI安裝
略過了 網上教程太多了,異常簡單。
板載網口千萬不要直通(你信你可以試試),另一個網口切換直通。
第二步 RouteOS安裝
去mikrotik.com注冊個賬號,收到郵件會帶注冊碼。
在官網下載安裝鏡像 首頁Software 選擇Cloud Hosted Router 最新版Stable 磁盤鏡像Raw disk image
解壓出來用StarWind V2V Image Converter轉換成ESXI磁盤文件VMware ESX server image
ESXI新建ROS虛擬機 Linux其他64位
內存512m-1G都行,如果有直通設備,記得把內存容量固定下來,硬盤上傳轉換好的文件
網卡一個是系統自帶的,一個是添加其他設備PCI網卡,類型選VMXNET3,引導選項改BIOS
啟動后用winbox64(去mikrotik.com下載)登錄后台 IP方式登陸不進就用MAC方式 用戶名admin 密碼空
ROS后台設置
interface菜單點開有兩個網卡,把有Tx、Rx流量的那個改成lan,另一個改成wan
IP菜單Addresses點開,有默認的本機IP,可以改成自己想要的IP比如192.168.0.1,后面別忘記加/24掩碼192.168.0.1/24,網段也要設在本網段192.168.0.0,interface確保為lan
再次打開interface菜單,+號加一個PPPoE Client,Name無所謂,interface選wan,第二標簽頁Dial Out設置User寬帶用戶名,Password寬帶密碼,Use Peer DNS勾上就是獲取運營商提供的DNS,這里我們要自己指定DNS就不勾。
回到interface List看到撥號接口前面出現R就代表已經成功撥號了,lan、wan、pppoe全部都有流量顯示。
但暫時還不能上網
點開主菜單IP選擇Firewall,在NAT標簽頁添加一個規則,Action標簽頁Action選擇masquerade完成防火牆設置。
點開主菜單IP選擇DHCP Server,點DHCP Setup
DHCP Server interface : lan DHCP應用接口
DHCP Address Space : 192.168.0.0/24 DHCP網段
Gateway for DHCP Network : 192.168.0.1 DHCP網關
Addresses to Give Out : 192.168.0.2-192.168.0.250 分配地址范圍自己設定
DNS Servers : 114.114.114.114 暫時填一個常用的DNS服務器
Lease Time : 默認
現在可以正常上網了
開啟ROS的DNS緩存 體驗網頁秒開
IP菜單DHCP Server的Network標簽頁
Address : 192.168.0.0/24 應用網段
Gateway : 192.168.0.1 網關
DNS Server : 192.168.0.1 把本機用於局域網內所有終端的DNS解析
IP菜單DNS 勾上Allow Remote Requests 允許遠程DNS請求 在頂上Servers 填入自己想要的真實外網DNS 服務器比如114.114.114.114,打開右側Cache按鈕如果現在內網所有終端已經正常上網,那么就可以看到DNS緩存信息了。
右側Static按鈕還可以指定IP解析,比如想讓局域網訪問ros.com解析到ROS網頁管理后台,那么這里的Name就填ros.com,Address填192.168.0.1,用瀏覽器訪問ros.com看看。
所有已經完成,但別忘記在主菜單System下的User中改密碼,建議不要用admin了,自己新建一個吧。
還有注意在IP菜單中Service停用一些不必要的服務,建議留一個winbox就行了,為了安全沒必要的盡量關掉。
IP菜單里的UPnP也設置一下,Enabled、Allow To Disable External interface、Show Dummy Rule都勾上。右側按鈕interfaces里面一定要添加兩個接口,一個是lan---type是internal,另一個是wan---external
第三步OpenWRT安裝設置
穩定好用的新版固件可以留言問我要
固件img文件還是用StarWind V2V Image Converter轉換成ESXI磁盤文件VMware ESX server image后上傳到虛擬機
新建Linux虛擬機其他4.x或更高版本的Linux(64位)
刪除硬盤和SCSI硬盤控制器等設備,CPU內存根據自己需求,添加現有硬盤,因為是旁路有所以網卡就用那個默認的虛擬網卡,引導選項改BIOS。
虛擬機開機進命令行后,nano /etc/config/network 修改eth0的IP,也就是管理IP,與ros的lan同一網段就ok比如192.168.0.2
Ctrl+O保存,Ctrl+X退出nano,reboot重啟。
用瀏覽器登錄openwrt后台,用戶root,默認無密碼,建議進去先修改。
然后來到網絡菜單的接口,wan口刪掉,修改lan口,網關指向192.168.0.1,廣播192.168.0.0,DNS是實際外網DNS比如114.114.114.114,下面DHCP服務忽略勾好,因為ROS已經負責DHCP了。
一些問題
以上很多都是跟着網上大佬做的,其實還有一些問題。
第一次按照這個做,正常上網也出過了,但是遇到pppoe過了不久就掉線再也撥不上去了,看到一些解決辦法,就是重新設置pppoe,但是暫時還沒驗證。
其次就是我用這套方案,家里千兆測速到電信只有600-700兆,而用J1900成品軟路由單Openwrt撥號,測速有850兆左右。我懷疑因為ros用戶wan和lan交互的網卡,雖然其中wan是直通,但是lan是和esxi管理口共用的,而這個口是不可能直通的,所以真個ros的interface其實是半直通半虛擬,這樣不知道是不是會影響實際性能,暫時也沒能用wan、lan雙口直通驗證是不是能達到更好的路由性能。
其實要說DNS緩存達到網頁秒開的效果,其實用單openwrt不用smart dns也感覺不出打開網頁解析的卡頓,根本效果就是微乎其微,非完美主義者建議不用折騰了,意義並不是很大。