重慶分公司,新征程啟航
為企業提供網站建設、域名注冊、服務器等服務
為企業提供網站建設、域名注冊、服務器等服務
liunx本身沒有特別完美的網速命令,但有幾個可以用nload,iftop,iptraf,nethogs,bmon,slurm,tcptrack這些命令都不是liunx內部命令,也就是說不是所有liunx版本都包括這些命令。目前最流行的是speedtest這個命令是需要安裝的
為雞西梨樹等地區用戶提供了全套網頁設計制作服務,及雞西梨樹網站建設行業解決方案。主營業務為網站設計制作、成都網站設計、雞西梨樹網站設計,以傳統方式定制建設網站,并提供域名空間備案等一條龍服務,秉承以專業、用心的態度為用戶提供真誠的服務。我們深信只要達到每一位用戶的要求,就會得到認可,從而選擇與我們長期合作。這樣,我們也可以走得更遠!
安裝speedtest-cli
speedtest-cli是一個用Python編寫的輕量級Linux命令行工具,在Python2.4至3.4版本下均可運行。它基于Speedtest.net的基礎架構來測量網絡的上/下行速率。安裝speedtest-cli很簡單——只需要下載其Python腳本文件。
使用speedtest-cli測試網速
使用speedtest-cli命令也很簡單,它不需要任何參數即可工作。
$ speedtest-cli
輸入這個命令后,它會自動發現離你最近的Speedtest.net服務器(地理距離),然后打印出測試的網絡上/下行速率。
學校一個電子教室通過ADSL寬帶“貓”上網,系統為RedHat 9.0,但在上網時有些網頁打不開,而且網速不快。有同事告訴筆者,說這跟MTU值有關系,將它修改到適當的值即可。在Windows下可以通過修改注冊表來修改MTU值,可在Linux下面又該如何做呢?通過查閱一些資料,筆者終于解決了這個問題,其實只需要一個簡單的命令即可:
# ifconfig eth0 mtu number
其中“number”為MTU的數值。修改完成后,可以用“ifconfig”命令來查看修改的結果。也可以通過一些網站來測試網速,進一步通過修改MTU值使網速達到最佳。為了不必每次都修改,我們可以在配置文件中修改,如:
# vi /etc/sysconfig/network-scripts/ifcfg-eth0MTU=1000
這樣Linux的靈活性又一次得到了體現。
小知識:MTU的英文全稱為Maximum Transmission Unit,意為最大傳輸單位,也就是在連接的時候,所傳輸信息包最多可以有多少字節。MTU決定著信息包的大小,如果信息包太小,同樣大小的數據就會分成很多個包傳輸,計算機不得不頻繁地作出響應;如果信息包太大則會產生錯誤,導致傳輸失敗。
linux的開源和免費使得越來越多的廠家用它來做防火墻和路由器,如海蜘蛛,飛魚星等,其實我們也可以用linux來打造一臺高性能的路由器。下面就以redhat為例(其他版本大同小異)教大家做一臺能限速的路由器,如何在linux下進行路由器限速就不再困難了。
安裝linux如果是新手請安裝時安裝圖形桌面。Linux路由器限速的'設置步驟如下:
路由器限速第一步:建立adsl連接,在系統設置——網絡設置處有。在圖形界面下很容易搞定。
路由器限速第二步:打開IP轉發和偽裝(也就是路由與NAT)
1、作為根用戶打開/etc/sysconfig/network文件,在文件增加以下一行:
GATEWAYDEV=PPP0這句話的作用是設定默認路由,有時沒有也可
2、打開IP轉發功能:打開/etc/sysctl.conf文件,修改net.ipv4.ip_forward=0一行,改0改為1
3、重啟系統
路由器限速第三步:設置iptables防火墻,決定那些IP能通過linux主機上網。
下面以允許192.168.0.0網段為例:
1、打開終端在#字提示符下輸入以下命令:
iptables-tnat-IPOSTROUTING-oppp0-jMASQUERADE#這句意思是偽裝從pppo出去的IPiptables-AFORWARD-s192.168.0.0/24-jACCEPT#這句意思是轉發來自192。168。0。0網段的通訊iptables-AFORWARD-d192.168.0.0/24-jACCEPT#這句意思是轉發到達192。168。0。0網段的通訊iptables-AFORWARD-s!192.168.0.0/24-jDROP#這句意思是拒絕轉發非192.168.0.0網段的通訊。
2、保存以上防火墻規則,以保證重啟后還有效,輸入命令:iptables-save/etc/sysconfig/iptables,這樣,你的linux路由器應該就能跑起來了。
linux做路由器限速的實現:在linux中有專門限速的軟件--tc,但TC的語法新手難以掌握,我們可以在防火墻上通過限定某個IP或某段IP在一秒內通過的數據包的數量來限速。
下面以限制192.168.0.2這個IP的網速為例說說,在桌面環境下打開/etc/syscofngi/iptables有沒有發現,剛才的設定全記錄在這個文件里,現在做的就在這個文件里添加規則就得了。
1、先要找到filter
2、在filter下面一行增加以下兩行:
-AFORWARD-mlimit-d192.168.0.2--limit30/sec-jACCEPT#這句意思是限定每秒只轉發30個到達192。168。0。2的數據包(約每秒45KB一個數據包是1.5KB)
-AFORWARD-d192.168.0.2-jDROP#這句作用是超過限制的到達192.168.0.2的數據包不通過)
3、路由器限速經過重啟系統就實現了。
1、fast
是Netflix提供的一項服務,它不僅可以通過命令行來使用,而且可以直接在Web端使用:fast.com,我們可以通過以下命令來安裝這個工具:
$ npm install --global fast-cli
不管是網頁端還是命令行,它都提供了最基本的網絡下載測速。命令行下最簡單的使用方法如下:
$ fast
93 Mbps ↓
從以上結果可以看出,直接使用fast命令的話,將只返回網絡下載速度。如果你也想獲取網絡的上傳速度,則需要使用-u選項。
$ fast -u
? 81 Mbps ↓ / 8.3 Mbps ↑
2、speedtest
是一個更加知名的工具。它是用Python寫成的,可以使用apt或pip命令來安裝。你可以在命令行下使用,也可以直接將其導入到你的 Python
項目,使用的時候,可以直接運行speedtest命令即可:
$ speedtest
Retrieving speedtest.net configuration...
Testing from Tencent cloud computing (140.143.139.14)...
Retrieving speedtest.net server list...
Selecting best server based on ping...
Hosted by Henan CMCC 5G (Zhengzhou) [9.69 km]: 28.288 ms
Testing download
speed................................................................................
Download: 56.20 Mbit/s
Testing upload
speed......................................................................................................
Upload: 1.03 Mbit/s
從運行結果可以看出,speedtest命令將直接提供上傳/下載速率,測試的過程也是挺快的。你可以編寫一個腳本來調用這個命令,然后定期進行網絡測試,并在結果保存在一個文件或數據庫,這樣你就可以實時跟蹤你的網絡狀態。
3、iperf
是一個網絡性能測試工具,它可以測試TCP和UDP帶寬質量,可以測量最大TCP帶寬,具有多種參數和UDP特性,可以報告帶寬,延遲抖動和數據包丟失。利用iperf這一特性,可以用來測試一些網絡設備如路由器,防火墻,交換機等的性能。
這個工具不僅僅在Linux系統下可以用,在Mac和Windows系統同樣可以使用。
如果你想測試網絡帶寬,則需要兩臺電腦。這兩臺電腦需要處于同樣的網絡,一臺作為服務機,另一臺作為客戶機,并且二者必須都要安裝
iPerf,可以通過如下命令獲取服務器的IP地址:
$ ip addr show | grep inet.*brd
inet 192.168.242.128/24 brd 192.168.242.255 scope global dynamic
noprefixroute ens33
之后,我們再在服務機上啟動iperf工具:
$ iperf -s
然后,我們就可以等待客戶機的接入了。客戶機可以使用以下命令來連上服務機:
$ iperf -c 192.168.242.128
通過幾秒鐘的測試,它就會返回網絡傳輸速率及帶寬。