寬帶技術網

 找回密碼
 注冊

QQ登錄

只需一步,快速開始

查看: 1158|回復: 6

用CentOS做一臺單網卡單線10撥路由器,榨干某信帶寬

[復制鏈接]
發表于 2019-8-17 12:56:51 | 顯示全部樓層 |閱讀模式
  自從家里寬帶升級到了200M就搗騰這搗騰那的,因為原先用的MikroTikROS系統)路由器是個百兆的,雖然能夠使用單線4撥,但速度也上不了100M了。于是破解光貓超管密碼,使用光貓直接路由,下行230M上行40M左右速度挺滿意的。畢竟相比去年家里30M帶寬多撥后達到98M強太多了。用了沒過多久抑制不住一顆蠢蠢欲動的心,想當年30M多撥能達到接近100M,要是200M多撥,這還不逆天!于是網上目測了幾款千兆路由,首選的還是MikroTik的路由,畢竟用了多年,對功能和性能了如指掌。備選的是D525/N2600的軟路由,J1900的軟路由主板太新可玩性差暫不考慮。還有就是新路由3Newifi 3),因為之前玩過Newifi Y1,刷breed和潘多拉,單線4撥,給爸媽用了。功能方面的話不是很強,性能和穩定性還行,內存大、不到100元價格,性價比極高。

  還有就是自己組裝一臺軟路由的想法,網上目測主板、電源、千兆網卡等。最初的想法是弄一個D2550的主板,主板帶PCIE 1X槽,可以擴充多口的千兆網卡,鏈路聚合啥的。而且聽說D2550D525的升級版,比之前觀望的D252/N2600軟路由都會強不少,并且二手主板價格相當的便宜。直到一塊華擎的APU主板出現在我的面前,通體漆黑上一抹藍凸顯雍容華貴驚艷四方的一塊主板。這主板擁有PCIE 16X擴展槽,9路音頻輸出,SPDIF輸出,USB3.0。更主要的是D2550主板只有兩個SATA,這主板擁有了4SATA,更適合裝在NAS機箱。并且使用的是臺式機的大內存條,穩定性和速度(可能一樣,但作者持懷疑態度)應該更高于小內存條。店家宣稱支持自由超頻(當時沒仔細研究這是啥,以為可以隨便超頻的意思,結果入了坑),更重要的是什么還支持虛擬化(給萬一搞不了CentOS,還能虛擬話成ROSiKuaiLEDE之類的留了退路,單單裝這些路由系統的話,個人感覺是不怎么值的可玩性太低)

  經過漫長的幾個星期的糾結,茶飯不思,日漸消瘦,哎。到處借錢騙紅包,終于攢足了錢,買下了機箱和E350主板。如下圖,花了一小時組裝好,裝系統開機。不得不說這機箱的硬盤架,只能支持螺絲屁股小于6mm的沉孔螺絲,由于沒有這種規格的螺絲,硬盤沒法固定在硬盤架上,插上主機的時候也插不緊,差點以為主板是壞的,因為開機就只會卡在BIOS的界面。重新插了硬盤之后正常使用,主板上面的CPU的風扇插錯的通道,插在機箱風扇上,沒法自動控制,實在是聲音大找了一圈終于找到了一個沒有字的插針。



  接下來進入正題,如何進行撥號上網?yum install –y rp-pppoe先安裝Linux通用撥號程序,幾乎所有的Linux都是用這個撥號程序的。安裝好rp-pppoe之后,可以使用pppoe-setup進行賬號密碼和DNS設置,這邊怎么設置的省略,按照提示輸入就行了。完成之后會保存成配置文件/etc/sysconfig/network-script/ifcfg-ppp0,可以簡單的使用ifup ppp0命令來直接進行撥號連接。下面這張簡易拓撲圖(偽拓撲圖)大致的講解下結構。

  撥號后設置nat轉發,就能實現簡易路由,代碼如下
  echo 1 > /proc/sys/net/ipv4/ip_forward
  iptables -t nat -A POSTROUTING -o ppp0 -j MASQUERADE
  實測網速下行大概在190M左右,上行在34M左右,網速有點縮水。查看網卡的工作模式確實是在1000M模式的,只不過網卡驅動是RTL8169的,網上搜索了下,有很多人反應,8169的網卡驅動在RTL8111的網卡上存在不兼容無法使用的問題。于是下載驅動源碼(RTL8168)、下載內核頭文件、編譯器,重新編譯內核,裝上驅動后問題依舊。猜測可能螃蟹廠的RTL 8111E網卡不行(網上說EF是這個系列里最好的,GH啥的都是閹割的),于是作者又買了塊Intel 825764口網卡,挺貴的艸艸艸,舍不得孩子套不著狼。到手后裝上立馬測試,還是達不到預期的速度,top命令查看pppoe的資源情況,單個進程的占用CPU比較高,能達到98左右。但總體CPU占用情況12%,并不很高。然后又測試了網卡的轉發性能,并沒有問題,可以排除掉南北橋性能問題。那剩下的唯一可能就是APU上的pppoe程序沒有優化,于是放棄yum上安裝的成品rp-pppoe 3.10二進制包,從網上下載3.13的源碼自行編譯安裝,性能稍微有些提升。先將就著用吧,萬一多撥之后能比較大的提升呢(然并軟)。

  rp-pppoe存在一個流弊的BUG,就是單網卡(同MAC地址)多播,這個特性可以突破我這個地區4撥(在MikroTik上使用VRRP最多只能4撥)的限制,甚至100撥都不是問題。本文下面內容就是講4撥和10撥下的測試。rp-pppoe多撥設置,命令如下
  pppoe-content /etc/sysconfig/network-script/ifcfg-ppp0
多撥之后別的電腦可能就無法再撥號了
  需要幾撥就執行幾次,然后設置iproute2的負載均衡。這貌似是個新特性,相當的不錯,配置起來so easy。媽媽再也不用擔心我玩游戲卡(大霧)。下面一句話搞定
  ip route replace default equalize nexthop dev ppp0 weight 1 nexthop dev ppp1 weight 1
  有幾路就連續寫幾個nexthopweight 1就是權重一樣,平均分配帶寬。最后我們要設置nat轉發,和上面的差不多,只不過也是有幾撥就要設置幾個轉發。
  iptables -t nat -A POSTROUTING -o ppp0 -j MASQUERADE
  iptables -t nat -A POSTROUTING -o ppp1 -j MASQUERADE
  …
  完成后簡易的路由器就成了,不過目前只有路由功能,DHCPDNS功能我們稍后再加上。我已經迫不及待的想要來跑個分了。下面是4撥的情況下相關數據,某信的官方測試客戶端不支持多線程,所以使用這個網站進行測試。測試結果應該算是比較準的吧,實際情況可能比測試更高些。簽約帶寬上行30M,測試下來114M的上行可以看出,應該是配置成功了。測試過程中用sar命令監控各路撥號的負載情況如下圖。



  把剩下的事做完,關閉掉光貓自帶的DHCP,并自建DHCPDNS服務器。一句話安裝dnsmasq,公司的DNS服務器我就用這個,400多人使用,做了2000條緩存,性能和可靠性杠杠的。為手藝人點贊,不對,為這軟件和作者點贊。

  yum install –y dnsmasq
  vim /etc/dnsmasq.conf 編輯配置文件,我的配置如下圖

  /etc/init.d/dnsmasq start
  完成之后,重啟自己電腦網卡就能從配置的DHCP服務器上獲取到信息,并且UBNT的無線AP也能正常的使用了。實測跑分是差了點,但兩臺小米電視看4K毫無壓力。Intel這網卡支持多隊列(mq),聽說性能是螃蟹廠的網卡所不能比擬的。以作者人品擔保,帶機500臺肯定是沒有問題的(瞎說)。


eth0-3 intel 網卡支持mq,eth4 rtl8111e 網卡不支持

  最終的所有配置是這樣的


  安裝transmission下兩部片,草雞快。做種上傳更是達到了驚人的144M。不知什么時候家里的寬帶某信給恢復了公網IP,真是業界良心啊。擁有10公網IIP就是一個字


  大功告成,再為我的小路由器安裝個花生殼。方便上班的時候投遞種子(大霧),我說我只是為了遠程管理,你們信嗎。

  總結,這個廉價的方案比較適合單網卡的NAS來做軟路由,樹莓派也可以,系統不一樣,方法同理。性能能不能提升還得看人品,并且這是最簡單的配置方法,正規的配置會用到nth來負載均衡,這里沒有介紹可以看下面參考文獻(因為太復雜我也懶得調)。其他NAS的功能無非是網絡共享之類的,可以裝SAMBA服務,視頻轉流媒體轉換可以用FFMPEG+NGINX來實現HLS,部署起來也不是很難的。

參考文獻
https://blog.csdn.net/com_stu_zhang/article/details/7815775
https://blog.csdn.net/l1902090/article/details/25780231
https://blog.csdn.net/wdscq1234/article/details/52643637
https://blog.csdn.net/bupt_tinyfisher/article/details/10255393
 樓主| 發表于 2019-8-17 13:02:23 | 顯示全部樓層
負載均衡配的簡單,也有可能配的是有問題的。下行縮水一半,只有100M,上行可達144M。
用nth來配可能是有必要的,暫且先娛樂下。
發表于 2019-8-17 20:01:11 | 顯示全部樓層
這才是大佬玩法
發表于 2019-8-17 21:18:22 | 顯示全部樓層
這是真大佬......你那能多撥真是爽呆了
發表于 2019-9-18 20:26:10 | 顯示全部樓層
大神牛啊,就憑這大兇之罩,借500都得
發表于 2019-9-21 11:27:38 | 顯示全部樓層
臥槽,膝蓋獻給大角蟲
發表于 2019-9-24 16:09:57 | 顯示全部樓層
多wlan上網撥號軟件或者多口撥號路由器就可以了 電信帶寬是針對單機撥號 下發數據VLAN一樣的情況下 寬帶賬號支持多終端撥號 就可以玩 我之前50M帶寬最高可達200M 然后就被上門維修了 后臺檢測數據不正常
您需要登錄后才可以回帖 登錄 | 注冊

本版積分規則

QQ|小黑屋|手機版|Archiver|寬帶技術網 ( 粵公網安備 44152102000001號 )|網站地圖

粵公網安備 44152102000001號

GMT+8, 2019-11-12 05:14 , Processed in 0.106449 second(s), 30 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

快速回復 返回頂部 返回列表
481开奖结果