linux網路連接的命令
『壹』 linux網路命令有哪些
計算機網路的主要優點是能夠實現資源和信息的共享,並且用戶可以遠程訪問信息。Linux提供了一組強有力的網路命令來為用戶服務,這些工具能夠幫助用戶登錄到遠程計算機上、傳輸文件和執行遠程命令等。 本章介紹下列幾個常用的有關網路操作的命令:
ftp 傳輸文件
telnet 登錄到遠程計算機上
r - 使用各種遠程命令
netstat 查看網路的狀況
nslookup 查詢域名和IP地址的對應
finger 查詢某個使用者的信息
ping 查詢某個機器是否在工作
使用ftp命令進行遠程文件傳輸
ftp命令是標準的文件傳輸協議的用戶介面。ftp是在TCP/IP網路上的計算機之間傳輸文件的簡單有效的方法。它允許用戶傳輸ASCII文件和二進制文件。 在ftp會話過程中,用戶可以通過使用ftp客戶程序連接到另一台計算機上。從此,用戶可以在目錄中上下移動、列出目錄內容、把文件從遠程機拷貝到本地機上、把文件從本地機傳輸到遠程系統中。
需要注意的是,如果用戶沒有那個文件的存取許可權,就不能從遠程系統中獲得文件或向遠程系統傳輸文件。 為了使用ftp來傳輸文件,用戶必須知道遠程計算機上的合法用戶名和口令。這個用戶名/口令的組合用來確認ftp 會話,並用來確定用戶對要傳輸的文件可以進行什麼樣的訪問。另外,用戶顯然需要知道對其進行ftp 會話的計算機的名字或IP地址。
Ftp命令的功能是在本地機和遠程機之間傳送文件。該命令的一般格式如下:
$ ftp 主機名/IP
其中「主機名/IP」是所要連接的遠程機的主機名或IP地址。在命令行中,主機名屬於選項,如果指定主機名,ftp將試圖與遠程機的ftp服務程序進行連接;如果沒有指定主機名,ftp將給出提示符,等待用戶輸入命令: $ ftp ftp > 此時在ftp>提示符後面輸入open命令加主機名或IP地址,將試圖連接指定的主機。 不管使用哪一種方法,如果連接成功,需要在遠程機上登錄。用戶如果在遠程機上有帳號,就可以通過ftp使用這一帳號並需要提供口令。
在遠程機上的用戶帳號的讀寫許可權決定該用戶在遠程機上能下載什麼文件和將上載文件放到哪個目錄中。 如果沒有遠程機的專用登錄帳號,許多ftp站點設有可以使用的特殊帳號。這個帳號的登錄名為anonymous(也稱為匿名ftp),當使用這一帳號時,要求輸入email地址作為口令。 如果遠程系統提供匿名ftp服務,用戶使用這項服務可以登錄到特殊的,供公開使用的目錄。
一般專門提供兩個目錄:pub目錄和incoming目錄。pub目錄包含該站點供公眾使用的所有文件,incoming目錄存放上載到該站點的文件。 一旦用戶使用ftp在遠程站點上登錄成功,將得到「ftp>」提示符。現在可以自由使用ftp提供的命令,可以用 help命令取得可供使用的命令清單,也可以在 help命令後面指定具體的命令名稱,獲得這條命令的說明。
最常用的命令有:
ls 列出遠程機的當前目錄
cd 在遠程機上改變工作目錄
lcd 在本地機上改變工作目錄
ascii 設置文件傳輸方式為ASCII模式
binary 設置文件傳輸方式為二進制模式
close終止當前的ftp會話
hash 每次傳輸完數據緩沖區中的數據後就顯示一個#號
get(mget) 從遠程機傳送指定文件到本地機
put(mput) 從本地機傳送指定文件到遠程機
open 連接遠程ftp站點
quit斷開與遠程機的連接並退出ftp
? 顯示本地幫助信息
! 轉到Shell中
下面簡單將ftp常用命令作一簡介。
啟動ftp會話 open命令用於打開一個與遠程主機的會話。該命令的一般格式是: open 主機名/IP 如果在ftp 會話期間要與一個以上的站點連接,通常只用不帶參數的ftp命令。如果在會話期間只想與一台計算機連接,那麼在命令行上指定遠程主機名或IP地址作為ftp命令的參數。 終止ftp會話 close、disconnect、quit和bye命令用於終止與遠程機的會話。close和disronnect命令關閉與遠程機的連接,但是使用戶留在本地計算機的ftp程序中。quit和bye命令都關閉用戶與遠程機的連接,然後退出用戶機上的ftp 程序。 改變目錄 「cd [目錄]」命令用於在ftp會話期間改變遠程機上的目錄,lcd命令改變本地目錄,使用戶能指定查找或放置本地文件的位置。 遠程目錄列表 ls命令列出遠程目錄的內容,就像使用一個交互shell中的ls命令一樣。ls命令的一般格式是: ls [目錄] [本地文件] 如果指定了目錄作為參數,那麼ls就列出該目錄的內容。如果給出一個本地文件的名字,那麼這個目錄列表被放入本地機上您指定的這個文件中。 從遠程系統獲取文件 get和mget命令用於從遠程機上獲取文件。get命令的一般格式為: get 文件名 您還可以給出本地文件名,這個文件名是這個要獲取的文件在您的本地機上創建時的文件名。如果您不給出一個本地文件名,那麼就使用遠程文件原來的名字。 mget命令一次獲取多個遠程文件。mget命令的一般格式為: mget 文件名列表 使用用空格分隔的或帶通配符的文件名列表來指定要獲取的文件,對其中的每個文件都要求用戶確認是否傳送。 向遠程系統發送文件 put和mput命令用於向遠程機發送文件。Put命令的一般格式為: put 文件名 mput命令一次發送多個本地文件,mput命令的一般格式為: mput 文件名列表 使用用空格分隔的或帶通配符的文件名列表來指定要發送的文件。對其中的每個文件都要求用戶確認是否發送。 改變文件傳輸模式 默認情況下,ftp按ASCII模式傳輸文件,用戶也可以指定其他模式。ascii和brinary命令的功能是設置傳輸的模式。用ASCII模式傳輸文件對純文本是非常好的,但為避免對二進制文件的破壞,用戶可以以二進制模式傳輸文件。 檢查傳輸狀態 傳輸大型文件時,可能會發現讓ftp提供關於傳輸情況的反饋信息是非常有用的。hash命令使ftp在每次傳輸完數據緩沖區中的數據後,就在屏幕上列印一個#字元。本命令在發送和接收文件時都可以使用。 ftp中的本地命令 當您使用ftp時,字元「!」用於向本地機上的命令shell傳送一個命令。如果用戶處在ftp會話中,需要shell做某些事,就很有用。例如用戶要建立一個目錄來保存接收到的文件。如果輸入!mkdir new_dir,那麼Linux就在用戶當前的本地目錄中創建一個名為new_dir 的目錄。
從遠程機grunthos下載二進制數據文件的典型對話過程如下:
$ ftp grunthos Connected to grunthos 220 grunthos ftp server Name (grunthos:pc): anonymous 33l Guest login ok, send your complete e-mail address as password. Password: 230 Guest 1ogin ok, access restrictions apply. Remote system type is UNIX. ftp > cd pub 250 CWD command successful. ftp > ls 200 PORT command successful. l50 opening ASCII mode data connection for /bin/1s. total ll4 rog1 rog2 226 Transfer comp1ete . ftp > binary 200 type set to I. ftp > hash Hash mark printing on (1024 bytes/hash mark). ftp > get rog1 200 PORT command successfu1. 150 opening BINARY mode data connection for rogl (l4684 bytes). # # # # # # # # # # # # # 226 Transfer complete. 14684 bytes received in 0.0473 secs (3e + 02 Kbytes/sec) ftp > quit 22l Goodbye.
使用telnet命令訪問遠程計算機
用戶使用telnet命令進行遠程登錄。該命令允許用戶使用telnet協議在遠程計算機之間進行通信,用戶可以通過網路在遠程計算機上登錄,就像登錄到本地機上執行命令一樣。 為了通過telnet登錄到遠程計算機上,必須知道遠程機上的合法用戶名和口令。雖然有些系統確實為遠程用戶提供登錄功能,但出於對安全的考慮,要限制來賓的操作許可權,因此,這種情況下能使用的功能是很少的。當允許遠程用戶登錄時,系統通常把這些用戶放在一個受限制的shell中,以防系統被懷有惡意的或不小心的用戶破壞。 用戶還可以使用telnet從遠程站點登錄到自己的計算機上,檢查電子郵件、編輯文件和運行程序,就像在本地登錄一樣。
但是,用戶只能使用基於終端的環境而不是X Wndows環境,telnet只為普通終端提供終端模擬,而不支持 X Wndow等圖形環境。 telnet命令的一般形式為: telnet 主機名/IP 其中「主機名/IP」是要連接的遠程機的主機名或IP地址。如果這一命令執行成功,將從遠程機上得到login:提示符。 使用telnet命令登錄的過程如下: $ telnet 主機名/IP 啟動telnet會話。 一旦telnet成功地連接到遠程系統上,就顯示登錄信息並提示用戶輸人用戶名和口令。如果用戶名和口令輸入正確,就能成功登錄並在遠程系統上工作。 在telnet提示符後面可以輸入很多命令,用來控制telnet會話過程,在telnet聯機幫助手冊中對這些命令有詳細的說明。
下面是一台Linux計算機上的telnet會話舉例:
$ telnet server. somewhere. com Trying 127.0.0.1… Connected to serve. somewhere. com. Escape character is \'?]\'. 「TurboLinux release 4. 0 (Colgate) kernel 2.0.18 on an I486 login: bubba password: Last login:Mon Nov l5 20:50:43 for localhost Linux 2. 0.6. (Posix). server: ~$ server: ~$ logout Connection closed by foreign host $
用戶結束了遠程會話後,一定要確保使用logout命令退出遠程系統。然後telnet報告遠程會話被關閉,並返回到用戶的本地機的Shell提示符下。 r-系列命令 除ftp和telnet以外,還可以使用r-系列命令訪問遠程計算機和在網路上交換文件。 使用r-系列命令需要特別注意,因為如果用戶不小心,就會造成嚴重的安全漏洞。用戶發出一個r-系列命令後,遠程系統檢查名為/etc/hosts.equiv的文件,以查看用戶的主機是否列在這個文件中。如果它沒有找到用戶的主機,就檢查遠程機上同名用戶的主目錄中名為.rhosts的文件,看是否包括該用戶的主機。如果該用戶的主機包括在這兩個文件中的任何一個之中,該用戶執行r-系列命令就不用提供口令。
雖然用戶每次訪問遠程機時不用鍵入口令可能是非常方便的,但是它也可能會帶來嚴重的安全問題。我們建議用戶在建立/etc/hosts.equiv和.rhosts文件之前,仔細考慮r-命令隱含的安全問題。
rlogin命令
rlogin 是「remote login」(遠程登錄)的縮寫。該命令與telnet命令很相似,允許用戶啟動遠程系統上的交互命令會話。rlogin 的一般格式是:
rlogin [ -8EKLdx ] [ -e char ] [-k realm ] [ - l username ] host
一般最常用的格式是: rlogin host 該命令中各選項的含義為:
-8 此選項始終允許8位輸入數據通道。該選項允許發送格式化的ANSI字元和其他的特殊代碼。如果不用這個選項,除非遠端的終止和啟動字元不是或,否則就去掉奇偶校驗位。
-E 停止把任何字元當作轉義字元。當和-8選項一起使用時,它提供一個完全的透明連接。
-K 關閉所有的Kerberos確認。只有與使用Kerberos 確認協議的主機連接時才使用這個選項。
-L 允許rlogin會話在litout模式中運行。要了解更多信息,請查閱tty聯機幫助。
-d 打開與遠程主機進行通信的TCP sockets的socket調試。要了解更多信息,請查閱setsockopt的聯機幫助。
-e 為rlogin會話設置轉義字元,默認的轉義字元是「~」,用戶可以指定一個文字字元或一個\\nnn形式的八進制數。
-k 請求rlogin獲得在指定區域內的遠程主機的Kerberos許可,而不是獲得由krb_realmofhost(3)確定的遠程主機區域內的遠程主機的Kerberos 許可。
-x 為所有通過rlogin會話傳送的數據打開DES加密。這會影響響應時間和CPU利用率,但是可以提高安全性。
rsh命令
rsh是「remote shell」(遠程 shell)的縮寫。 該命令在指定的遠程主機上啟動一個shell並執行用戶在rsh命令行中指定的命令。如果用戶沒有給出要執行的命令,rsh就用rlogin命令使用戶登錄到遠程機上。
rsh命令的一般格式是:
rsh [-Kdnx] [-k realm] [-l username] host [command]
一般常用的格式是:
rsh host [command ]
command可以是從shell提示符下鍵人的任何Linux命令。
rsh命令中各選項的含義如下:
-K 關閉所有的Kerbero確認。該選項只在與使用Kerbero確認的主機連接時才使用。
-d 打開與遠程主機進行通信的TCP sockets的socket調試。要了解更多的信息,請查閱setsockopt的聯機幫助。
-k 請求rsh獲得在指定區域內的遠程主機的Kerberos許可,而不是獲得由krb_relmofhost(3)確定的遠程主機區域內的遠程主機的Kerberos許可。
-l 預設情況下,遠程用戶名與本地用戶名相同。本選項允許指定遠程用戶名,如果指定了遠程用戶名,則使用Kerberos 確認,與在rlogin命令中一樣。
-n 重定向來自特殊設備/dev/null的輸入。
-x 為傳送的所有數據打開DES加密。這會影響響應時間和CPU利用率,但是可以提高安全性。 Linux把標准輸入放入rsh命令中,並把它拷貝到要遠程執行的命令的標准輸入中。它把遠程命令的標准輸出拷貝到rsh的標准輸出中。它還把遠程標准錯誤拷貝到本地標准錯誤文件中。任何退出、中止和中斷信號都被送到遠程命令中。當遠程命令終止了,rsh也就終止了。
rcp命令
rcp代表「remote file 」(遠程文件拷貝)。該命令用於在計算機之間拷貝文件。
rcp命令有兩種格式。第一種格式用於文件到文件的拷貝;第二種格式用於把文件或目錄拷貝到另一個目錄中。
rcp命令的一般格式是:
rcp [-px] [-k realm] file1 file2 rcp [-px] [-r] [-k realm] file
directory 每個文件或目錄參數既可以是遠程文件名也可以是本地文件名。遠程文件名具有如下形式:rname@rhost:path,其中rname是遠程用戶名,rhost是遠程計算機名,path是這個文件的路徑。
rcp命令的各選項含義如下:
-r 遞歸地把源目錄中的所有內容拷貝到目的目錄中。要使用這個選項,目的必須是一個目錄。
-p 試圖保留源文件的修改時間和模式,忽略umask。
-k 請求rcp獲得在指定區域內的遠程主機的Kerberos 許可,而不是獲得由krb_relmofhost(3)確定的遠程主機區域內的遠程主機的Kerberos許可。
-x 為傳送的所有數據打開DES加密。這會影響響應時間和CPU利用率,但是可以提高安全性。 如果在文件名中指定的路徑不是完整的路徑名,那麼這個路徑被解釋為相對遠程機上同名用戶的主目錄。如果沒有給出遠程用戶名,就使用當前用戶名。如果遠程機上的路徑包含特殊shell字元,需要用反斜線(\\)、雙引號(」)或單引號(』)括起來,使所有的shell元字元都能被遠程地解釋。 需要說明的是,rcp不提示輸入口令,它通過rsh命令來執行拷貝。 - Turbolinux 提供稿件
『貳』 linux下配置網路連接
linux 命令配置網路連接首先,先了解傳統的網路設置命令:
1. 使用ifconfig命令設置並查看網路介面情況
示例1: 設置eth0的IP,同時激活設備:
# ifconfig eth0 192.168.4.1 netmask 255.255.255.0 up
示例2: 設置eth0別名設備 eth0:1 的IP,並添加路由
# ifconfig eth0:1 192.168.4.2
# route add ?host 192.168.4.2 dev eth0:1
示例3:激活(禁用)設備
# ifconfig eth0:1 up(down)
示例4:查看所有(指定)網路介面設置
# ifconfig (eth0)
2. 使用route 命令設置路由表
示例1:添加到主機路由
# route add ?host 192.168.4.2 dev eth0:1
# route add ?host 192.168.4.1 gw 192.168.4.250
示例2:添加到網路的路由
# route add ?net IP netmask MASK eth0
# route add ?net IP netmask MASK gw IP
# route add ?net IP/24 eth1
示例3:添加默認網關
# route add default gw IP
示例4:刪除路由
# route del ?host 192.168.4.1 dev eth0:1
示例5:查看路由信息
# route 或 route -n (-n 表示不解析名字,列出速度會比route 快)
3.ARP 管理命令
示例1:查看ARP緩存
# arp
示例2: 添加
# arp ?s IP MAC
示例3: 刪除
# arp ?d IP
4. ip是iproute2軟體包裡面的一個強大的網路設置工具,他能夠替代一些傳統的網路管理工具。例如:ifconfig、route等,
上面的示例完萬能用下面的ip命令實現,而且ip命令能實現更多的功能.下面介紹一些示例:
4.0 ip命令的語法
ip命令的用法如下:
ip [OPTIONS] OBJECT [COMMAND [ARGUMENTS]]
4.1 ip link set--改動設備的屬性. 縮寫:set、s
示例1:up/down 起動/關閉設備。
# ip link set dev eth0 up
這個等於傳統的 # ifconfig eth0 up(down)
示例2:改動設備傳輸隊列的長度。
參數:txqueuelen NUMBER或txqlen NUMBER
# ip link set dev eth0 txqueuelen 100
示例3:改動網路設備MTU(最大傳輸單元)的值。
# ip link set dev eth0 mtu 1500
示例4: 修改網路設備的MAC地址。
參數: address LLADDRESS
# ip link set dev eth0 address 00:01:4f:00:15:f1
4.2 ip link show--顯示設備屬性. 縮寫:show、list、lst、sh、ls、l
-s選項出現兩次或更多次,ip會輸出更為周詳的錯誤信息統計。
示例:
# ip -s -s link ls eth0
eth0: mtu 1500 qdisc cbq qlen 100
link/ether 00:a0:cc:66:18:78 brd ff:ff:ff:ff:ff:ff
RX: bytes packets errors dropped overrun mcast
2449949362 2786187 0 0 0 0
RX errors: length crc frame fifo missed
0 0 0 0 0
TX: bytes packets errors dropped carrier collsns
178558497 1783946 332 0 332 35172
TX errors: aborted fifo window heartbeat
0 0 0 332
這個命令等於傳統的 ifconfig eth0
5.1 ip address add--添加一個新的協議地址. 縮寫:add、a
示例1:為每個地址設置一個字元串作為標簽。為了和Linux-2.0的網路別名兼容,這個字元串必須以設備名開頭,接著一個冒號,
# ip addr add local 192.168.4.1/28 brd + label eth0:1 dev eth0
示例2: 在乙太網介面eth0上增加一個地址192.168.20.0,掩碼長度為24位(155.155.155.0),標准廣播地址,標簽為eth0:Alias:
# ip addr add 192.168.4.2/24 brd + dev eth1 label eth1:1
這個命令等於傳統的: ifconfig eth1:1 192.168.4.2
5.2 ip address delete--刪除一個協議地址. 縮寫:delete、del、d
# ip addr del 192.168.4.1/24 brd + dev eth0 label eth0:Alias1
5.3 ip address show--顯示協議地址. 縮寫:show、list、lst、sh、ls、l
# ip addr ls eth0
5.4.ip address flush--清除協議地址. 縮寫:flush、f
示例1 : 刪除屬於私網10.0.0.0/8的所有地址:
# ip -s -s a f to 10/8
示例2 : 取消所有乙太網卡的IP地址
# ip -4 addr flush label "eth0"
6. ip neighbour--neighbour/arp表管理命令
縮寫 neighbour、neighbor、neigh、n
命令 add、change、replace、delete、fulsh、show(或list)
6.1 ip neighbour add -- 添加一個新的鄰接條目
ip neighbour change--修改一個現有的條目
ip neighbour replace--替換一個已有的條目
縮寫:add、a;change、chg;replace、repl
示例1: 在設備eth0上,為地址10.0.0.3添加一個permanent ARP條目:
# ip neigh add 10.0.0.3 lladdr 0:0:0:0:0:1 dev eth0 nud perm
示例2:把狀態改為reachable
# ip neigh chg 10.0.0.3 dev eth0 nud reachable
6.2.ip neighbour delete--刪除一個鄰接條目
示例1:刪除設備eth0上的一個ARP條目10.0.0.3
# ip neigh del 10.0.0.3 dev eth0
6.3.ip neighbour show--顯示網路鄰居的信息. 縮寫:show、list、sh、ls
示例1: # ip -s n ls 193.233.7.254
193.233.7.254. dev eth0 lladdr 00:00:0c:76:3f:85 ref 5 used 12/13/20 nud reachable
6.4.ip neighbour flush--清除鄰接條目. 縮寫:flush、f
示例1: (-s 能顯示周詳信息)
# ip -s -s n f 193.233.7.254
7. 路由表管理
7.1.縮寫 route、ro、r
7.5.路由表
從Linux-2.2開始,內核把路由歸納到許多路由表中,這些表都進行了編號,編號數字的范圍是1到255。另外,
為了方便,還能在/etc/iproute2/rt_tables中為路由表命名。
默認情況下,所有的路由都會被插入到表main(編號254)中。在進行路由查詢時,內核只使用路由表main。
7.6.ip route add -- 添加新路由
ip route change -- 修改路由
ip route replace -- 替換已有的路由
縮寫:add、a;change、chg;replace、repl
示例1: 設置到網路10.0.0/24的路由經過網關193.233.7.65
# ip route add 10.0.0/24 via 193.233.7.65
示例2: 修改到網路10.0.0/24的直接路由,使其經過設備mmy
# ip route chg 10.0.0/24 dev mmy
示例3: 實現鏈路負載平衡.加入預設多路徑路由,讓ppp0和ppp1分擔負載(注意:scope值並非必需,他只不過是告訴內核,
這個路由要經過網關而不是直連的。實際上,如果你知道遠程端點的地址,使用via參數來設置就更好了)。
# ip route add default scope global nexthop dev ppp0 nexthop dev ppp1
# ip route replace default scope global nexthop dev ppp0 nexthop dev ppp1
示例4: 設置NAT路由。在轉發來自192.203.80.144的數據包之前,先進行網路地址轉換,把這個地址轉換為193.233.7.83
# ip route add nat 192.203.80.142 via 193.233.7.83
示例5: 實現數據包級負載平衡,允許把數據包隨機從多個路由發出。weight 能設置權重.
# ip route replace default equalize nexthop via 211.139.218.145 dev eth0 weight 1 nexthop via 211.139.218.145 dev eth1 weight 1
7.7.ip route delete-- 刪除路由
縮寫:delete、del、d
示例1:刪除上一節命令加入的多路徑路由
# ip route del default scope global nexthop dev ppp0 nexthop dev ppp1
7.8.ip route show -- 列出路由
縮寫:show、list、sh、ls、l
示例1: 計算使用gated/bgp協議的路由個數
# ip route ls proto gated/bgp |wc
1413 9891 79010
示例2: 計算路由緩存裡面的條數,由於被緩存路由的屬性可能大於一行,以此需要使用-o選項
# ip -o route ls cloned |wc
159 2543 18707
示例3: 列出路由表TABLEID裡面的路由。預設設置是table main。TABLEID或是個真正的路由表ID或是/etc/iproute2/rt_tables文件定義的字元串,
或是以下的特別值:
all -- 列出所有表的路由;
cache -- 列出路由緩存的內容。
ip ro ls 193.233.7.82 tab cache
示例4: 列出某個路由表的內容
# ip route ls table fddi153
示例5: 列出默認路由表的內容
# ip route ls
這個命令等於傳統的: route
7.9.ip route flush -- 擦除路由表
示例1: 刪除路由表main中的所有網關路由(示例:在路由監視程式掛掉之後):
# ip -4 ro flush scope global type unicast
示例2:清除所有被克隆出來的IPv6路由:
# ip -6 -s -s ro flush cache
示例3: 在gated程式掛掉之後,清除所有的BGP路由:
# ip -s ro f proto gated/bgp
示例4: 清除所有ipv4路由cache
# ip route flush cache
*** IPv4 routing cache is flushed.
7.10 ip route get -- 獲得單個路由 .縮寫:get、g
使用這個命令能獲得到達目的地址的一個路由及他的確切內容。
ip route get命令和ip route show命令執行的操作是不同的。ip route show命令只是顯示現有的路由,而ip route get命令在必要時會派生出新的路由。
示例1: 搜索到193.233.7.82的路由
# ip route get 193.233.7.82
193.233.7.82 dev eth0 src 193.233.7.65 realms inr.ac cache mtu 1500 rtt 300
示例2: 搜索目的地址是193.233.7.82,來自193.233.7.82,從eth0設備到達的路由(這條命令會產生一條非常有意思的路由,這是一條到193.233.7.82的回環路由)
# ip r g 193.233.7.82 from 193.233.7.82 iif eth0
193.233.7.82 from 193.233.7.82 dev eth0 src 193.233.7.65 realms inr.ac/inr.ac
cache mtu 1500 rtt 300 iif eth0
8. ip route -- 路由策略資料庫管理命令
命令add、delete、show(或list)
注意:策略路由(policy routing)不等於路由策略(rouing policy)。
在某些情況下,我們不只是需要通過數據包的目的地址決定路由,可能還需要通過其他一些域:源地址、IP協議、傳輸層埠甚至數據包的負載。
這就叫做:策略路由(policy routing)。
8.5. ip rule add -- 插入新的規則
ip rule delete -- 刪除規則
縮寫:add、a;delete、del、d
示例1: 通過路由表inr.ruhep路由來自源地址為192.203.80/24的數據包
ip ru add from 192.203.80/24 table inr.ruhep prio 220
示例2:把源地址為193.233.7.83的數據報的源地址轉換為192.203.80.144,並通過表1進行路由
ip ru add from 193.233.7.83 nat 192.203.80.144 table 1 prio 320
示例3:刪除無用的預設規則
ip ru del prio 32767
8.7. ip rule show -- 列出路由規則
縮寫:show、list、sh、ls、l
示例1: # ip ru ls
0: from all lookup local
32762: from 192.168.4.89 lookup fddi153
32764: from 192.168.4.88 lookup fddi153
32766: from all lookup main
32767: from all lookup 253
9. ip maddress -- 多播地址管理
縮寫:show、list、sh、ls、l
9.3.ip maddress show -- 列出多播地址
示例1: # ip maddr ls mmy
9.4. ip maddress add -- 加入多播地址
ip maddress delete -- 刪除多播地址
縮寫:add、a;delete、del、d
使用這兩個命令,我們能添加/刪除在網路介面上監聽的鏈路層多播地址。這個命令只能管理鏈路層地址。
示例1: 增加 # ip maddr add 33:33:00:00:00:01 dev mmy
示例2: 查看 # ip -O maddr ls mmy
2: mmy
link 33:33:00:00:00:01 users 2 static
link 01:00:5e:00:00:01
示例3: 刪除 # ip maddr del 33:33:00:00:00:01 dev mmy
10.ip mroute -- 多播路由緩存管理
10.4. ip mroute show -- 列出多播路由緩存條目
縮寫:show、list、sh、ls、l
示例1:查看 # ip mroute ls
(193.232.127.6, 224.0.1.39) Iif: unresolved
(193.232.244.34, 224.0.1.40) Iif: unresolved
(193.233.7.65, 224.66.66.66) Iif: eth0 Oifs: pimreg
示例2:查看 # ip -s mr ls 224.66/16
(193.233.7.65, 224.66.66.66) Iif: eth0 Oifs: pimreg
9383 packets, 300256 bytes
11. ip tunnel -- 通道設置
縮寫tunnel、tunl
11.4.ip tunnel add -- 添加新的通道
ip tunnel change -- 修改現有的通道
ip tunnel delete -- 刪除一個通道
縮寫:add、a;change、chg;delete、del、d
示例1:建立一個點對點通道,最大TTL是32
# ip tunnel add Cisco mode sit remote 192.31.7.104 local 192.203.80.1 ttl 32
11.4.ip tunnel show -- 列出現有的通道
縮寫:show、list、sh、ls、l
示例1: # ip -s tunl ls Cisco
12. ip monitor和rtmon -- 狀態監視
ip命令能用於連續地監視設備、地址和路由的狀態。這個命令選項的格式有點不同,命令選項的名字叫做monitor,接著是操作對象:
ip monitor [ file FILE ] [ all | OBJECT-LIST ]
示例1: # rtmon file /var/log/rtmon.log
示例2: # ip monitor file /var/log/rtmon.log r
『叄』 linux如何上網
第一步,先打開虛擬機至圖形用戶界面,看一下是否有網路連接。