2010年12月20日 星期一

免費Domain Name(DynDNS) 及 ddclient設定

ADSL撥接OK了,接下來就是申請一個免費的 domain name,我是用很多人申請的 DynDNS,申請一個帳號並自 E-mail啟動後,就可以去申請服務,目前可以申請兩個免費的 Domain name,
除了 DynDNS官網直接 Update Domain 對映的 Dynamic IP外,也可以使用 ddclient這個工具安裝在系統,去幫你即時更新 IP Add,
# sudo apt-get install ddclient
輸入你在DynDNS上的帳號和密碼 (忘了抓圖...)
   
  選擇 DDNS服務使用的介面,我是ADSL 所以選 ppp0,
   輸入你申請的 FQDN(Full Qualified Domain Name),


  安裝成功後,以後如果你有變更 Domain name的需求,就可以先去 DynDNS 官網上更改,然後再執行下面指令,重新 Step by step的設定,
 # sudo dpkg -reconfigure ddclient
也可以手動去更改設定檔(/etc/default/ddclient/etc/ddclient.conf ),改好後執行下列指令重啟服務,,
# sudo service ddclient restart
 Done!!

已知問題:

  • 網路上查知,DyNDS申請的Domain name,無法被中國等國家連線. 
  • 無法用來架設郵件伺服器,縱使 DynDNS上有 mail server的選項,但你架設的 Mail server所發出信件,還是會被 Hinet給 block掉,出現如「relay access denied」訊息,























參考資料:
小氣架站 DIY: 到 dyndns.org 申請免費 Domain Name (by Jamyy's Weblog)
Ubuntu 設定 DDNS Client (by 暉獲無度的步烙閣)

2010年12月18日 星期六

ADSL連線(pppoe) on Ubuntu 10.04 LTS

最近改變了ubuntu notebook的接線,直接和Hinet ADSL接到同一個 switch hub,順便記錄一下如何用ADSL撥接上網,

1) 撥號程式設定:
# pppoeconf
…懶得打字,截圖如下,
  eth0是我的內建Intel網卡,eth1則是 WiFi網卡,ok
   嗯,OK
   輸入你的ISP 寬頻連線帳號,
   輸入你的ISP 寬頻連線密碼,
   選是,或是自己編輯「resolv.conf」也OK, 我的DNS server修改如下
nameserver 168.95.1.1
nameserver 168.95.192.1

   限制MTU,選是
    選是,
   -_-|||  見鬼,先選是,之後再troubleshooting吧,


 按「是」















★ 修改「/etc/network/interfaces」,原本是eth0- static IP編輯為以下,,
auto lo eth0 eth1
iface lo inet loopback

iface eth0 inet static
address 192.168.1.5
netmask 255.255.255.0
#gateway 192.168.1.1    #原本是接在LAN port,現在接法不同

iface eth1 inet dhcp

auto dsl-provider
iface dsl-provider inet ppp
pre-up /sbin/ifconfig eth0 up # line maintained by pppoeconf
provider dsl-provider

#auto eth0
#iface eth0 inet manual

存檔後重新開機測試,看看是不是 eth0 Up後,也會帶起來pppoe的連線了,測試指令如下:
# ifconfig ppp0
# ping 168.95.1.1
# ping www.yahoo.com.tw

Done!!

2010年12月16日 星期四

rsync + ssh on Ubuntu 10.04 LTS

rsync 以前就知道了,只是一直沒試過,以為它是 不安全的檔案傳輸方式,最近才知道它可以配合ssh做遠端的安全資料備援, 從 rsync原廠網站得知它的特色如下:
  1. 可更新整個目錄結構及檔案系統
  2. 可保留soft link、hard link、檔案擁有者、檔案權限、設備(? 不瞭)和檔案更新時間
  3. 安裝時不需要特殊的權限
  4. 多檔案傳輸效率高
  5. 可配合rsh、ssh或直接的sockets來傳輸資料
  6. 支援anonymous(匿名)方式傳輸,做site mirror很方便

    root@ HostA(欲備份資料) ---->  root@ ServerB(rsync server, 存放備份)
              192.168.1.5                                  192.168.1.100


    0) ssh前置動作:(ssh免密碼登入)
      為了日後備份自動化,所以我要先做 HostA上的root 利用ssh 免密碼登入 ServerB,
    產生 DSA 金鑰一對 (Public key & Private key)
    root@HostA# ssh-keygen -t dsa
    • 預設會存在家目錄下的目錄「.ssh」
    • 如果有需要的話, passphrase要設定密碼,我是沒設直接按 Enter

    將 HostA's root的Pub key放到 ServerB's root 家目錄的「.ssh」下,
    root@HostA# scp ~/.ssh/id_dsa.pub 192.168.1.100:/root/.ssh/.

    (First time)還是需要密碼登入至 ServerB,
    root@HostA# ssh root@192.168.1.100

    將HostA's root目錄下的public key轉存為系統預設處理放置公鑰的檔案「authorized_keys」,
    root@ServerB# cat /root/.ssh/id_dsa.pub >> /root/.ssh/authorized_keys

    Logout ServerB,重新登入, 金鑰符合的話,此時已不需要密碼認證了,
    root@HostA# ssh root@192.168.1.100
    ==========至此前置工作完成!!

    1) 確認安裝情況: (如果沒安裝的話,就執行apt-get install rsync)
    # dpkg -l rsync
    ||/ 名稱         版本         簡介
    ====================================================
    ii  rsync          3.0.7-1ubuntu1 fast remote file copy program (like rcp)

    2) Server端設定: (存放備份資料的主機)
    可以使用anonymous 或是 module設定(Ref: /etc/rsyncd.conf),這
    root@ServerB# vi /etc/default/rsync
    RSYNC_ENABLE=true
      server端要改 faluse 為 true

    啟動 rsync server服務,使設定生效:
    root@ServerB# service rsync restart

    測試一下 rsync 服務的Port有沒有問題:(rsync default port: Port 873)
    root@ClientA# telnet 192.168.1.100 873

    3) Client端設定:
    決定要備份的目錄, 例如: /var/backup/2010-12-12_21.03.56.908806.x32.ful/ ,

    4) rsync備份指令執行:  (Ref: rsync) 這動作稱: Push via rsync daemon, 也就是clientA的 rsync server不用啟動也ok, 它另有不同方向的執行動作, 請使用「man rsync」
    root@clientA# rsync -avSH --delete -e ssh /var/backup/2010-12-12_21.03.56.908806.x32.ful/ root@192.168.1.15:/var/backups/
    .......(執行過程如下)















    參數說明:

    -a, archive mode; equals -rlptgoD
    -v, increase verbosity
    -S, handle sparse files efficiently
    -H, preserve hard links
    -l, copy symlinks as symlinks
    -r, recurse into directories
    -p, preserve permissions
    -t, preserve modification times
    -g, preserve group
    -o, preserve owner (super-user only)
    -D, preserve device files (super-user only)
    --delete, delete extraneous files from dest dirs
    -e, specify the remote shell to use
    • 只有第一次備份的動作會比較久(∵是 full backup), 之後備份執行時,rsync就會比較檔案的差異性,備份新增的部份(incremental backup),若clinet端的檔案有刪減的話,執行rsync時也會同步server端的備份目錄清況.
    • Clinet與 Server的 rsync使用者目錄權限要注意, 例: Client端 user要對備份過去的目錄有read的權利 & Server端的登入user也要對放置備份的目錄有write的權利,我是為了方便起見才兩邊都用root,但要注意某些rsync參數只有root才能使用.
    • 可以寫一個script去專門做 rsync重要資料 ,並放入crontab內讓系統排程執行.
    Done!!

    [Linux]使用rsync+ssh自動同步網站檔案

    2010年12月13日 星期一

    移除舊 kernel on Ubuntu 10.04 LTS

    自從2個月前裝了ubuntu 10.04 就已經升級2次 linux kernel,每次安裝都浪費了一些空間,保留舊版本是很保險,但運作一段時間確認系統正常了,就可以把舊 kernel給移除以節省空間,

    1) 目前已安裝 linux kernel 確認:
    # sudo dpkg -l | grep linux-image
    ...
    ii  linux-image-2.6.32-24-generic
    ii  linux-image-2.6.32-25-generic
    ii  linux-image-2.6.32-26-generic
    ...
    2) 移除舊的 linux kernel 套件:
    # sudo apt-get purge linux-image-2.6.32-24-generic
    Done!!
     重新開機按住 shift 觀看 GRUB 開機選單有沒有變化吧,進入系統內檢查 /boot內的檔案也可以.

    3) 補充說明:
    除了用 apt-get purge的方式移除,也可以安裝 ubuntu tweak執行「清除核心」~

    請問如何完整移除舊 kernel [論壇 - 新手村]

    iptables Linux的 Firewall (testing)

    My iptables 設定,
    OS: Ubuntu 10.04 LTS
    iptables version: 1.4.4
    -------------------------------------------------------------

    # Loopback is totally open
    iptables -A INPUT -i lo -j ACCEPT
    iptables -A OUTPUT -o lo -j ACCEPT
    # Log and block IP spoof from outside
    iptables -A INPUT -s 255.0.0.0/8 -j LOG --log-prefix "spoofed source ip"
    iptables -A INPUT -s 255.0.0.0/8 -j DROP
    iptables -A INPUT -s 0.0.0.0/8 -j LOG --log-prefix "spoofed source ip"
    iptables -A INPUT -s 0.0.0.0/8 -j DROP
    iptables -A INPUT -s 10.0.0.0/8 -j LOG --log-prefix "spoofed source ip"
    iptables -A INPUT -s 10.0.0.0/8 -j DROP
    -------------------------------------------------------------

    # iptables --help
    Usage: iptables -[AD] chain rule-specification [options]
           iptables -I chain [rulenum] rule-specification [options]
           iptables -R chain rulenum rule-specification [options]
           iptables -D chain rulenum [options]
           iptables -[LS] [chain [rulenum]] [options]
           iptables -[FZ] [chain] [options]
           iptables -[NX] chain
           iptables -E old-chain-name new-chain-name
           iptables -P chain target [options]
           iptables -h (print this help information)

    Commands:
    Either long or short options are allowed.
      --append  -A chain Append to chain
      --delete  -D chain Delete matching rule from chain
      --delete  -D chain rulenum
    Delete rule rulenum (1 = first) from chain
      --insert  -I chain [rulenum]
    Insert in chain as rulenum (default 1=first)
      --replace -R chain rulenum
    Replace rule rulenum (1 = first) in chain
      --list    -L [chain [rulenum]]
    List the rules in a chain or all chains
      --list-rules -S [chain [rulenum]]
    Print the rules in a chain or all chains
      --flush   -F [chain] Delete all rules in  chain or all chains
      --zero    -Z [chain] Zero counters in chain or all chains
      --new     -N chain Create a new user-defined chain
      --delete-chain
                -X [chain] Delete a user-defined chain
      --policy  -P chain target
    Change policy on chain to target
      --rename-chain
                -E old-chain new-chain
    Change chain name, (moving any references)
    Options:
    [!] --proto -p proto protocol: by number or name, eg. `tcp'
    [!] --source -s address[/mask]
    source specification
    [!] --destination -d address[/mask]
    destination specification
    [!] --in-interface -i input name[+]
    network interface name ([+] for wildcard)
     --jump -j target
    target for rule (may load target extension)
      --goto      -g chain
                                  jump to chain with no return
      --match -m match
    extended match (may load extension)
      --numeric -n numeric output of addresses and ports
    [!] --out-interface -o output name[+]
    network interface name ([+] for wildcard)
      --table -t table table to manipulate (default: `filter')
      --verbose -v verbose mode
      --line-numbers print line numbers when listing
      --exact -x expand numbers (display exact values)
    [!] --fragment -f match second or further fragments only
      --modprobe=<command> try to insert modules using this command
      --set-counters PKTS BYTES set the counter during insert/append
    [!] --version -V print package version.

    2010年12月12日 星期日

    root設定密碼 on Ubuntu 10.04 LTS

    昨天為了測試 ubuntu 的 sbackup軟體,它所備份出來的檔案放在 /var/backup下,但無法sudo cd 進去,直接用「su -」變身root ,但熊熊想不起來…我當初安裝ubuntu時,真的有要我設定root的密碼嗎?? 上網google查一下,原來預設Ubuntu的 root預設是沒有密碼的,還是會有用到的緊急時刻,所以還是快點設定吧,

    1) 切換為 root:(以下輸入目前使用者密碼)
    # sudo su -

    2) root 身份下更換密碼:

    root# passwd
    Enter new UNIX password:
    Retype new UNIX password:
    passwd: password updated successfully

    3) 補充說明:
    後來才知道,其實 1)做完就OK了,沒必要做 2) 徒增風險... XD


    Done!!


    參考資料:
    我發現了ubuntu進入root帳號的方法 [論壇 - 新手村]

    2010年12月11日 星期六

    升級NAS-01G 的 MLdonkey

    買來這台 PLANEX的 NAS-01G已經5年多了,台灣官方 Firmware一直停在 3.00,內建的 MLdonkey版本也停留在2.8.2,網路很多人已經升到 3.0版,而且還安裝了 Debian  (不過我是不需要 -_-"),目前 MLdonkey已經到了 3.0.6版,抓檔效率已經進步不少,所以還是升級一下唄~

    1) 程式下載:
    你可以到 MLdonkey官網自行下載進入NAS-01G內編譯(前提有安裝 Debian),記得要別抓錯版本,記得要抓 Linux的.
    OR
    去這個 SoHo NAS討論區,有人已經編譯好了,可以直接下載來用.  推薦!!

    2) backdoor檔案製作:
    使用文字編輯器輸入下面兩行,並存檔為「backdoor」,

    1. mv /mnt/mlnet /mnt/mlnet.old
    2. cp /mnt/Share/mlnet /mnt
    3) 程式上載:
    將 1)抓的檔案解壓內的「mlnet」及 2)編輯的純文字檔「backdoor」放入NAS-01G網路芳鄰的分享資料夾內ex:「\\NAS的IP\Share」後,將 NAS-01G重開機~
    機器重開機完成後,利用網址「http://NAS的IP:4080/」應該就可以看到 MLdonkey 3.0.6的banner,enjoy it!!

    4) 補充說明:
    •  MLdonkey 3.0.6設定參數的地方,在網頁上方的Input,例如第一次覆蓋完重開機,好像會要求你設定 admin的帳號和密碼
    •  MLdonkey升級完成後,記得把 Share的「backdoor」檔案移除

    參考資料:
    支援BT的窮人NAS-PCI NAS-01G(in Mobile01)
    PCI NAS-01G 改機實錄 (in 數位男女)
    [Nas-01g] mldonkey 編譯
    Nas-01g BT下載用的好東西 rtorrent

    2010年12月10日 星期五

    APT / DPKG 基本指令說明

    1) 設定檔: /etc/apt/sources.list
       很重要!! 記錄了APT套件庫的位置,以便於讓client(一般使用者)可以取得套件.
    格式為,,,
    類型     URI     發行版本(Distribution)     組別(Section)
    ★ URI - APT伺服器的位址及使用協定


    2) dpkg 常用指令:


    dpkg -i package.deb 安裝套件

    dpkg -r package 移除套件(留下設定檔)

    dpkg -P package 移除套件(設定檔不留下)

    dpkg -L package 列出套件已安裝的目錄及檔案

    dpkg -l package 顯示套件版本

    dpkg -unpack package.deb 解開 deb套件的內容

    dpkg -S filename 搜索該檔案案所屬的套件名稱(自建的檔案就會找不到)

    dpkg -l 列出目前系統已安裝的套件

    dpkg -c package.deb 列出 deb套件的內容(只觀看)

    3) apt 相關指令:

    apt-get update   (更新套件索引清單)

    apt-get upgrade   (套件直接升級更新)

    apt-get -y dist-upgrade  (套件直接升級,同時安裝新套件以解決相依性問題)

    apt-get install package   (安裝套件)

    apt-get remove package   移除套件(留下設定檔)

    apt-get --purge remove package   移除套件(設定檔不留下)

    apt-cache search package   (由套件索引清單內查看是否有此套件)

    apt-cache depends package   (查詢套件的所有相依性檔案)

    apt-setup  (用來設定 /etc/apt/sources.lst)

    apt-get source   套件名稱 (若 sources.lst 中設定 deb-src,就可以用此指令來抓取程式的原始碼)


    apt-get clean   (清除之前利用apt-get install所下載來的套件, 位於 /var/cache/apt/archives)

    dpkg-reconfigure package   (重設套件的相關設定或選項)

    4) 補充說明:
    • apt 的圖形介面:apt-get install synaptic
    • 如果常用apt-get install安裝軟體,建議定期執行 apt-get clean清一下垃圾

     參考資料:

    2010年12月8日 星期三

    系統資訊相關指令筆記

    Linux上面沒有裝置管理員,但還是有其他(指令)工具可以用,

    1) dmesg
    輸出資訊很多,可以配合用 more 、 less 或 grep查詢

    2) uname
     參數「-a」輸出kernel、hostname…等資訊

    3) x86info
     x86主機專用,可查詢CPU 詳細資訊

    4) runlevel
     查詢目前的 runlevel

    5) arch
     查詢目前 Linux的系統架構 (ex: i386、i686、sparc…)

    6) ifconfig
      查詢目前系統網路卡資訊(ex: IP Add、MAC)

    7) mount
      目前系統所掛載的檔案系統

    8) printenv
      查詢目前的環境變數,以及使用者的環境變數狀況

    9) top
      即時監控系統目前資源使用情況 (ex: CPU、Memory...)

    10) cat /proc/iports
      查詢系統 I/O 使用狀況

    11)  ps -aux 、pstree 和 jobs
      系統每執行一個檔案後,就會產生一個執行序(process),有些程式是前景執行,有些則是在背景執行. 一但這些 process掛掉,代表這個應用程式或服務已經中斷了. 我們可以透過上面的指令,查詢 process運作情況,並做相關的處理動作. (ex: 砍掉某個當掉的程序.. kill PID)

    12) service --status-all
      查詢目前系統中的服務運作情況,其他動作可以利用「service --help」

    13) netstat -ln | more
      監控遠端連進系統服務的資訊

    14) lsof
      查看目前系統所有 process所開啟的檔案

    15) tcpdump
      截取網路中傳輸的資料以進行分析

    16) renice -15 2000
      改變 process的 priority

    17) who
      查詢系統使用者登入情況

    18)  w
      查詢系統使用者登入及其 process

    19) finger
      顯示使用者從遠端登入的情形

    20) last
      顯示使用者登入的歷史紀錄

    21) uptime
      秀出系統從開啟到現在(未關機)的時間

    2010年12月7日 星期二

    Gnome 相關設定

    Gnome (The GNU Network Object Model Environment) 是一個為 Open Source For Unix-like OS提供易用、人性化的桌面使用環境.
    OS: Ubuntu 10.04 LTS

    1) 如何使 gnome的桌面設定回到初使值?
    # 「CTRL + ALT + F1」三個按鈕一起按回到 command-line環境,
    #  在家目錄下刪除下列檔案「.gnome .gnome2 .gconf .gconfd .metacity
    # 「CTRL + ALT + F7」三個按鈕一起按回到 Gnome GUI 桌面.
    Done!

    2) not yet

    2010年12月6日 星期一

    資料夾名稱的更改方法 on Ubuntu 10.04 LTS

    裝好Ubuntu後就一直想到這個問題,目錄是中文(桌面、下載、文件、公共、圖片、模板、音樂 、影片) 真的很討厭,總不可能永遠都在GUI 企面,昨天就在谷哥上面找到了方法,,

    1) 目錄直接改為英文:

    # mv 下載 download
    # mv 公共 publicshare
    # mv 桌面 desktop
    # mv 圖片 pictures
    # mv 模板 templates
    # mv 音樂 music
    # mv 文件 documents
    # mv 影片 videos

    2) 更改使用者目錄名稱對映設定檔:
    # vi ~/.config/user-dirs.dirs

    XDG_DESKTOP_DIR="$HOME/desktop"
    XDG_DOWNLOAD_DIR="$HOME/download"
    XDG_TEMPLATES_DIR="$HOME/templates"
    XDG_PUBLICSHARE_DIR="$HOME/publicshare"
    XDG_DOCUMENTS_DIR="$HOME/documents"
    XDG_MUSIC_DIR="$HOME/music"
    XDG_PICTURES_DIR="$HOME/pictures"
    XDG_VIDEOS_DIR="$HOME/videos"
    把原來目錄的中文名稱改為之前更名後的英文名稱.

    3) 讓使用者目錄名稱對映關係生效:
    # xdg-user-dirs-update
    ?? 不過我用這個指令卻沒有出現任何畫面,怪

    重新開機登入測試看看吧~


    2010年12月4日 星期六

    Xrdp 安裝在 Ubuntu 10.04 LTS

    Ubuntu 裝好後,除了遠端登入用 ssh外,也想裝一下 vnc,找了一下谷哥,剛好發現另一種GUI login方式「xrdp


    xrdp 是一個beased on rdesktop開發的Open Source 遠端桌面server,可提供使用者連入時提供一個X Window的桌面環境

    1) 利用 APT線上安裝: (含有vnc4server xbase-clients xrdp 套件)
    sudo apt-get install xrdp
       2) 連線設定: (Setting for Windows RDP client)
       使用下列程式做確認,, # vino-preferences &




    3) Windows Client 端的 RDP 連線測試:
       開啟「遠端桌面連線」輸入要連線的IP後, 

       Module: 選 「sesman-Xvnc
       username:輸入「Linux User ID
       password:   輸入「Linux User Password
    一切順利的話就可以看到 Ubuntu 桌面的畫面了~

    4) xrdp 設定檔案:
     /etc/xrdp/xrdp.ini  內,
    [globals]
    bitmap_cache=yes
    bitmap_compression=yes
    port=3389
    crypt_level=low
    channel_code=1
    .....

    [xrdp1]
    name=sesman-Xvnc
    lib=libvnc.so
    username=ask
    password=ask
    ip=192.168.1.5
    port=-1

     幾乎不用做更動,我的是只有改IP 
     改完設定記得重新啟動 xrdp 服務,
    sudo service xrdp restart

    5) About Firewall: (注意Port 3350 & 3389有開啟即可)
    # iptables -A INPUT -p tcp --dport 3389 -j ACCEPT

    6) 已知問題:
    a. Windows 7的 RDP 7.0無法連線?
    Ubuntu 10.04內建的xrdp版本是 0.4,需升版至 0.5才可以,

    2010年12月3日 星期五

    我的耐操 AP(VG2100VG)

    居易 2100VG這台 AP真是超耐用的,大概買了有 7年了吧,到現在還是跑得很好,區網內PC跑BT 好幾天也不會掛,以後這台壞了,我還是要買居易科技的產品 (只是有點貴…)



    PO上這些圖是因為這台AP有點有小怪,WPA設錯就無法讓我的Notebook上網…-_-
       所以我只好把可以上網的設定值都po上來,以免以後忘了~

    2010年12月2日 星期四

    Vim 指令筆記

    Vim的操作模式切換:
    1) 兩種操作模式:
      分別為普通模式(normal mode)和插入模式(insert mode),要確保模式是普通模式的話,都會按ESC鍵。 在普通模式下,可以按下不同鍵來輸入不同編輯命令,按下「i」便切換至插入模式,我們便可以打入本文內容。
    2) 常用移動指令:
     在某些系統上,可能無法使用方向鍵移動遊標 (cursor),
    • 「h」- 向左移動
    •  「l」- 向右移動
    •  「j」- 向下移動
    •  「k」-向上移動
    • 「^」-移至本行的第一個字元
    • 「$」-移至本行尾端的字元
    • 「gg」-移至本文件最前一行
    • 「G」-移至本文件最後一行
    3) 常用本文編輯指令:
    • 「a」-在遊標字元前開始插上字句
    • 「o」-在遊標下行建立新的一行
    • 「x」-刪除遊標上的字元
    • 「dd」-刪除(目前所在)一整行
      ex: 5dd -刪除5行
    • 還原前次操作-在普通模式下按「u」
    4) 搜尋及拷貝字串:
    • 「/」-向下搜尋字句
    • 「?」-向上搜尋字句
    • 「x」-剪下字句
    • 「y」- (yanking)拷貝文字,,
        EX:「y2w」-拷貝兩個文字, 「yy」-拷貝這一行,「3yy」-拷夕三行文字
    • 「p」-貼上

    5) 退出 vim時:
    「:q!」+ Enter -不存檔並強制退出vim
    「wq」+ Enter -儲檔後退出vim

    2010年12月1日 星期三

    iperf - 跨平台的網路效能測試工具

    不管是 SI工程師還是公司的網路人員總是會用到測試網路效能的工具,一般中小企業又不可能買 IXIA (一台主機 + GIBC 2-Port卡版…記得近百萬跑不掉),省錢的時代就可以使用免費的[ iperf ] ~
    1) 程式下載:
    Windows 平台: 目前只到 1.7.0
    http://www.noc.ucf.edu/Tools/Iperf/default.htm
             載到目錄裡,用命令列執行即可
    Ubuntu Linux平台: (另有圖形化的 xjperf)
    # sudo apt-get install iperf


    2) 使用方法: 
     一定要成對的測試方法,一台當 server,另一台就是作 client,互相打封包.
    Server 端-
    # iperf -s
             "-s" 代表做為 Server side.


    Client 端-
    # iperf -c 192.168.100.200 -t 300 -i 2
            "-c" 代表做為 Client side.
            "192.168.100.200" 輸入正確的 Server side端的IP add.
            "-t" 總測試時間,以秒為單位
            "-i" 頻寬測試的間隔顯示時間


     參考資料:
    IT online- 使用Iperf測試網路效能
    Linux - 網路效能測試工具 "iperf"