㈠ linux網路設置
一.安裝和配置網路設備
在安裝linux時,如果你有網卡,安裝程序將會提示你給出tcp/ip網路的配置參數,如本機的 ip地址,預設網關的ip地址,DNS的ip地址等等.根據這些配置參數,安裝程序將會自動把網卡(linux系統首先要支持)驅動程序編譯到內核中去. 但是我們一定要了解載入網卡驅動程序的過程,那麼在以後改變網卡,使用多個網卡的時候我們就會很容易的操作.網卡的驅動程序是作為模塊載入到內核中去的, 所有linux支持的網卡驅動程序都是存放在目錄/lib/moles/(linux版本號)/net/ ,例如inter的82559系列10/100M自適應的引導網卡的驅動程序是eepro100.o,3COM的3C509 ISA網卡的驅動程序是3C509.o,DLINK的pci 10網卡的驅動程序是via-rhine.o,NE2000兼容性網卡的驅動程序是ne2k-pci.o和ne.o.在了解了這些基本的驅動程序之後,我們就可以通過修改模塊配置文件來更換網卡或者增加網卡.
1. 修改/etc/conf.moles 文件
這個配置文件是載入模塊的重要參數文件,大家先看一個範例文件
#/etc/conf.moles
alias eth0 eepro100
alias eth1 eepro100
這個文件是一個裝有兩塊inter 82559系列網卡的linux系統中的conf.moles中的內容.alias命令表明以太口(如eth0)所具有的驅動程序的名稱,alias eth0 eepro100說明在零號乙太網口所要載入的驅動程序是eepro100.o.那麼在使用命令 modprobe eth0的時候,系統將自動將eepro100.o載入到內核中.對於pci的網卡來說,由於系統會自動找到網卡的io地址和中斷號,所以沒有必要在 conf.moles中使用選項options來指定網卡的io地址和中斷號.但是對應於ISA網卡,則必須要在conf.moles中指定硬體的io地址或中斷號, 如下所示,表明了一塊NE的ISA網卡的conf.moles文件.
alias eth0 ne
options ne io=0x300 irq=5
在修改完conf.moles文件之後,就可以使用命令來載入模塊,例如要插入inter的第二塊網卡:
#insmod /lib/moles/2.2.14/net/eepro100.o
這樣就可以在以太口載入模塊eepro100.o.同時,還可以使用命令來查看當前載入的模塊信息:
[root@ice /etc]# lsmod
Mole Size Used by
eepro100 15652 2 (autoclean)
返回結果的含義是當前載入的模塊是eepro100,大小是15652個位元組,使用者兩個,方式是自動清除.
2. 修改/etc/lilo.conf文件
在一些比較新的linux版本中,由於操作系統自動檢測所有相關的硬體,所以此時不必修改/etc/lilo.conf文件.但是對於ISA網卡和老的版本,為了在系統初始化中對新加的網卡進行初始化,可以修改lilo.conf文件.在/etc/lilo.conf文件中增加如下命令:
append="ether=5,0x240,eth0 ether=7,0x300,eth1"
這條命令的含義是eth0的io地址是0x240,中斷是5,eth1的io地址是0x300,中斷是7.
實際上,這條語句來自在系統引導影像文件時傳遞的參數,
LILO: linux ether=5,0x240,eth0 ether=7,0x300,eth1
這種方法也同樣能夠使linux系統配置好兩個網卡.類似的,在使用三個以上網卡的時候,也可以依照同樣的方法.
在配置好網卡之後,就應該配置TCP/IP的參數,在一般情況下,在安裝linux系統的同時就會提示配置網路參數.但是之後如果我們想要修改網路設置,可以使用如下的命令:
#ifconfig eth0 A.B.C.D netmask E.F.G.H
A.B.C.D 是eth0的IP地址,E.F.G.H是網路掩碼.
其實,在linux系統中我們可以給一塊網卡設置多個ip地址,例如下面的命令:
#ifconfig eth0:1 202.112.11.218 netmask 255.255.255.192
然後,使用命令#ifconfig -a 就可以看到所有的網路介面的界面:
eth0 Link encap:Ethernet HWaddr 00:90:27:58:AF:1A
inet addr:202.112.13.204 Bcast:202.112.13.255 Mask:255.255.255.192
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:435510 errors:0 dropped:0 overruns:0 frame:2
TX packets:538988 errors:0 dropped:0 overruns:0 carrier:0
collisions:318683 txqueuelen:100
Interrupt:10 Base address:0xc000
eth0:1 Link encap:Ethernet HWaddr 00:90:27:58:AF:1A
inet addr:202.112.11.218 Bcast:202.112.11.255 Mask:255.255.255.192
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
Interrupt:10 Base address:0xc000
lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
UP LOOPBACK RUNNING MTU:3924 Metric:1
RX packets:2055 errors:0 dropped:0 overruns:0 frame:0
TX packets:2055 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
看到網路介面有三個,eth0 , eth0:1,lo,eth0是真實的乙太網絡介面,eth0:1和eth0是同一塊網卡,只不過綁定了另外的一個地址,lo是會送地址。
eth0和 eth0:
1可以使用不同網段的ip地址,這在同一個物理網段卻使用不同的網路地址的時候十分有用。
另外,網卡有一種模式是混雜模式(prosimc),在這個模式下,網卡將會接收網路中所有的數據包,一些linux下的網路監聽工具例如tcpmp,snort等等都是把網卡設置為混雜模式.
ifconfig命令可以在本次運行的時間內改變網卡的ip地址,但是如果系統重新啟動,linux仍然按照原來的默認的設置啟動網路介面。
這時候,可以使用netconfig或netconf命令來重新設置默認網路參數。netconfig 命令是重新配置基本的tcp/ip參數,參數包括是否配置為動態獲得ip地址(dhcpd和bootp),網卡的ip地址,網路掩碼,預設網關和首選的域名伺服器地址。
netconf命令可以詳細的配置所有網路的參數,分為客戶端任務,伺服器端任務和其他的配置三個部分,在客戶端的配置中,主要包括基本主機的配置(主機名,有效域名,網路別名,對應相應網卡的ip地址,網路掩碼,網路設備名,網路設備的內核驅動程序),
DNS地址配置,預設網關的地址配置,NIS地址配置,ipx介面配置,ppp/slip的配置等等。在伺服器端配置中,主要包括NFS的配置,DNS的配置, ApacheWebServer配置,Samba的配置和Wu-ftpd的配置
。在其他的配置選項中,一個是關於/etc/hosts文件中的主機配置,一個是關於/etc/networks文件中的網路配置信息,最後是關於使用linuxconf配置的信息。
在linuxconf命令下,同樣也可以配置網路信息,但是大家可以發現,linuxconf程序是調用netconf來進行網路配置的。
另外,在/etc/sysconfig/network-scripts目錄下存放著系統關於網路的配置文件,
範例如下:
:
<br><br>
ifcfg-eth0* ifdown-post* ifup-aliases* ifup-ppp*
ifcfg-eth1* ifdown-ppp* ifup-ipx* ifup-routes*
ifcfg-lo* ifdown-sl* ifup-plip* ifup-sl*
ifdown@ ifup@ ifup-post* network-functions
ifcfg-eth0是以太口eth0的配置信息,
它的內容如下:
DEVICE="eth0" /*指明網路設備名稱*/
IPADDR="202.112.13.204" /*指明網路設備的ip地址*/
NETMASK="255.255.255.192" /*指明網路掩碼*/
NETWORK=202.112.13.192 /*指明網路地址*/
BROADCAST=202.112.13.255 /*指明廣播地址*/
ONBOOT="yes" /*指明在系統啟動時是否激活網卡*/
BOOTPROTO="none" /*指明是否使用bootp協議*/
所以,也可以修改這個文件來進行linux下網路參數的改變。[/SIZE]
二 網路服務的配置
在這一部分,我們並不是詳細的介紹具體的網路伺服器(DNS,FTP,WWW,SENDMAIL)的配置(那將是巨大的篇幅),而是介紹一下與linux網路服務的配置相關的文件.
1. LILO的配置文件
在linux系統中,有一個系統引導程序,那就是lilo(linux loadin),利用lilo可以實現多操作系統的選擇啟動.它的配置文件是/etc/lilo.conf.在這個配置文件中,lilo的配置參數主要分為兩個部分,一個是全局配置參數,包括設置啟動設備等等.另一個是局部配置參數,包括每個引導影像文件的配置參數.
在這里就不詳細介紹每個參數,特別的僅僅說明兩個重要的參數:password和restricted選項,password選項為每個引導的影像文件加入口令保護. 都知道,在linux系統中有一個運行模式是單用戶模式,在這個模式下,用戶是以超級用戶的身份登錄到linux系統中.人們可以通過在lilo引導的時候加入參數(linux single 或linux init 0)就可以不需要口令直接進入單用戶模式的超級用戶環境中,這將是十分危險的.所以在lilo.conf中增加了password的配置選項來為每個影像文件增加口令保護. 可以在全局模式中使用password選項(對所有影像文件都加入相同的口令),或者為每個單獨的影像文件加入口令.
這樣一來,在每次系統啟動時,都會要求用戶輸入口令.也許覺得每次都要輸入口令很麻煩,可以使用restricted選項,它可以使lilo僅僅在linux啟動時輸入了參數(例如 linux single)的時候才會檢驗密碼.這兩個選項可以極大的增加系統的安全性,建議在lilo.conf文件中設置它們.
由於password在/etc/lilo.conf文件是以明文存放的,所以必須要將/etc/lilo.conf文件的屬性改為僅僅root可讀(0400).
另外,在lilo的早期版本中,存在著引導扇區必須存放到前1024柱面的限制,在lilo的2.51版本中已經突破了這個限制,同時引導界面也變成了圖形界面更加直觀.將最新版本下載解壓後,使用命令make" 後,使用命令make install即可完成安裝.
注意: 物理安全才是最基本的安全,即使在lilo.conf中增加了口令保護,如果沒有物理安全,惡意闖入者可以使用啟動軟盤啟動linux系統.
2. 域名服務的配置文件
(1)/etc/HOSTNAME 在這個文件中保存著linux系統的主機名和域名.範例文件
ice.xanet.e.cn
這個文件表明了主機名ice,域名是xanet.e.cn
(2)/etc/hosts和/etc/networks文件在域名服務系統中,有著主機表機制,/etc/hosts和/etc/networks就是主機表發展而來在/etc/hosts中存放著你不需要DNS 系統查詢而得的主機ip地址和主機名的對應,下面是一個範例文件:
# ip 地址 主機名 別名
127.0.0.1 localhosts loopback
202.117.1.13 www.xjtu.e.cn www
202.117.1.24 ftp.xjtu.e.cn ftp
在/etc/networks 中,存放著網路ip地址和網路名稱的一一對應.它的文件格式和/etc/hosts是類似的
(3)/etc/resolv.conf 這個文件是DNS域名解析器的主要配置文件,它的格式十分簡單,每一行由一個主關鍵字組成./etc/resolv.conf的關鍵字主要有:
domain 指明預設的本地域名,
search 指明了一系列查找主機名的時候搜索的域名列表,
nameserver 指明了在進行域名解析時域名伺服器的ip地址.
下面給出一個範例文件:
#/etc/resolv.conf
domain xjtu.e.cn
search xjtu.e.cn e.cn
nameserver 202.117.0.20
nameserver 202.117.1.9
(4)/etc/host.conf 在系統中同時存在著DNS域名解析和/etc/hosts的主機表機制時,由文件/etc/host.conf來說明了解析器的查詢順序.
範例文件如下
#/etc/host.conf
order
hosts,bind #
解析器查詢順序是文件/etc/hosts,然後是DNS
multi on #允許主機擁有多個ip地址
nospoof on #禁止ip地址欺騙
3. DHCP的配置文件
/etc/dhcpd.conf是DHCPD的配置文件,我們可以通過在/etc/dhcpd.conf文件中的配置來實現在區域網中動態分配ip地址,一台linux主機設置為dhcpd伺服器,通過鑒別網卡的MAC地址來動態的分配ip地址.
範例文件如下:
option domain-name "chinapub.com";
use-host-decl-names off;
subnet 210.27.48.0 netmask 255.255.255.192
{
filename "/tmp/image";
host dial_server
{
hardware ethernet 00:02:b3:11:f2:30;
fixed-address 210.27.48.8;
filename "/tmp/image";
}
}
在這個文件中,最主要的是通過設置的硬體地址來鑒別區域網中的主機,並分配給它指定的ip地址,hardware ethernet 00:02:b3:11:f2:30指定要動態分配ip的主機得網卡的MAC地址,fixed-address 210.27.48.8指定分配其ip地址。filename "/tmp/image"是通過tftp服務,主機所要得到的影像文件,可以通過得到的影像文件來引導主機啟動
4. 超級守候進程inetd的配置
在linux系統中有一個超級守候進程inetd,inetd監聽由文件/etc/services指定的服務的埠,inetd根據網路連接請求,調用相應的服務進程來相應請求.在這里有兩個文件十分重要,/etc/inetd.conf和/etc/services,文件/etc/services定義linu系統中所有服務的名稱,協議類型,服務的埠等等信息,/etc/inetd.conf是inetd的配置文件,由它來指定那些服務可以由 inetd來監聽,以及相應的服務進程的調用命令
.首先介紹一下/etc/services文件,/etc/services文件是一個服務名和服務埠對應的資料庫文件,
如下面所示:
/etc/services文件
(實際上,以上僅僅是/etc/services的一部分,限於篇幅沒有全部寫出)
在這個文件中,為了安全考慮,可以修改一些常用服務的埠地址,
例如可以把telnet服務的埠地址改為52323,www的埠改為8080,ftp埠地址改為2121等等,這樣僅僅需要在應用程序中修改相應的埠即可.這樣可以提高系統的安全性.
/etc/inetd.conf文件是inetd的配置文件, 首先要了解一下linux伺服器到底要提供哪些服務。一個很好的原則是" 禁止所有不需要的服務",這樣黑客就少了一些攻擊系統的機會./etc/inetd.conf範例文件
大家看到的這個文件已經修改過的文件,除了telnet 和ftp服務,其他所有的服務都被禁止了.在修改了/etc/inetd.conf之後,使用命令kill -HUP (inetd的進程號),使inetd重新讀取配置文件並重新啟動即可.
5. ip route的配置
利用linux,一台普通的微機也可以實現高性價比的路由器.
首先了解一下linux的查看路由信息的命令:
[root@ice /etc]# route -n
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
202.112.13.204 0.0.0.0 255.255.255.255 UH 0 0 0 eth0
202.117.48.43 0.0.0.0 255.255.255.255 UH 0 0 0 eth1
202.112.13.192 202.112.13.204 255.255.255.192 UG 0 0 0 eth0
202.112.13.192 0.0.0.0 255.255.255.192 U 0 0 0 eth0
202.117.48.0 202.117.48.43 255.255.255.0 UG 0 0 0 eth1
202.117.48.0 0.0.0.0 255.255.255.0 U 0 0 0 eth1
127.0.0.0 0.0.0.0 255.0.0.0 U 0 0 0 lo
0.0.0.0 202.117.48.1 0.0.0.0 UG 0 0 0 eth1
命令netstat -r n 得到輸出結果和route -n是一樣的.它們操作的都是linux 內核的路由表.
命令cat /proc/net/route的輸出結果是以十六進製表示的路由表
.
[root@ice /etc]# cat /proc/net/route
Iface Destination Gateway Flags RefCnt Use Metric
Mask
eth0 CC0D70CA 00000000 0005 0 0 0 FFFFFFF
eth1 2B3075CA 00000000 0005 0 0 0 FFFFFFF
eth0 C00D70CA CC0D70CA 0003 0 0 0 C0FFFFF
eth0 C00D70CA 00000000 0001 0 0 0 C0FFFFF
eth1 003075CA 2B3075CA 0003 0 0 0 00FFFFF
eth1 003075CA 00000000 0001 0 0 0 00FFFFF
lo 0000007F 00000000 0001 0 0 0 000000F
eth1 00000000 013075CA 0003 0 0 0 0000000
通過計算可以知道,下面的這個路由表(十六進制)和前面的路由表(十進制)是一致的.
我們還可以通過命令route add (del )來操作路由表,增加和刪除路由信息.
除了上面的靜態路由,linux還可以通過routed來實現rip協議的動態路由.我們只需要打開linux的路由轉發功能,在/proc/sys/net/ipv4/ip_forward文件中增加一個字元
1.
三.網路的安全設置
在這一部分,再次強調一定要修改/etc/inetd.conf,安全的策略是禁止所有不需要的服務.
除此之外,還有以下幾個文件和網路安全相關.
(1)./etc/ftpusers ftp服務是一個不太安全的服務,所以/etc/ftpusers限定了不允許通過ftp訪問linux主機的用戶列表.當一個ftp請求傳送到 ftpd,ftpd首先檢查用戶名,如果用戶名在/etc/ftpusers中,則ftpd將不會允許該用戶繼續連接.範例文件如下:
# /etc/ftpusers - users not allowed to login via ftp
root
bin
daemon
adm
lp
sync
shutdown
halt
mail
news
uucp
operator
games
nobody
nadmin
(2)/etc/securetty 在linux系統中,總共有六個終端控制台,我們可以在/etc/securetty中設置哪個終端允許root登錄,所有其他沒有寫入文件中的終端都不允許root登錄.範例文件如下:
# /etc/securetty - tty's on which root is allowed to login
tty1
tty2
tty3
tty4
(3)tcpd的控制登錄文件/etc/hosts.allow和/etc/hosts.deny
在tcpd服務進程中,通過在/etc/hosts.allow和/etc/hosts.deny中的訪問控制規則來控制外部對linux主機的訪問.它們的格式都是
service-list : hosts-list [ : command]
服務進程的名稱 :
主機列表 可選,當規則滿足時的操作
在主機表中可以使用域名或ip地址,ALL表示匹配所有項,EXCEPT表示除了某些項, PARANOID表示當ip地址和域名不匹配時(域名偽裝)匹配該項.
範例文件如下:
#
# hosts.allow
This file describes the names of the hosts which are
# allowed to use the local INET services, as decided
# by the '/usr/sbin/tcpd' server.
#
ALL : 202.112.13.0/255.255.255.0
ftpd: 202.117.13.196
in.telnetd: 202.117.48.33
ALL : 127.0.0.1
在這個文件中,網段202.112.13.0/24可以訪問linux系統中所有的網路服務,主機202.117.13.196隻能訪問ftpd服務,主機202.117.48.33隻能訪問telnetd服務.本機自身可以訪問所有網路服務.
在/etc/hosts.deny文件中禁止所有其他情況:
#/etc/hosts.deny
ALL : DENY : spawn (/usr/bin
㈡ linux怎麼配置網路連接
1、首先我們打開XShell工具,點擊頂部的打開選項,
㈢ 如何查看linux系統的網路介面
方法/步驟
1、進入linux,使用「 cat /etc/services 」命令,可以查看所有服務默認的埠列表信息。
㈣ 修改linux的網路配置方式有哪些步驟
在實際配置時,可以採用四種方法:
其一,基於控制面板法;
其二,基於X的linuxconf法;
三,基於Web瀏覽器的linuxconf法;
其四,手工使用命令法。
二、基於控制面板法
Linux的控制面板中的Network Configuration提供了易於掌握的集成化配置環境。首先檢查在安裝Red Hat Linux時是否安裝了控制面板。
# rpm –gagrep control
如果安裝了控制面板,則屏幕上顯示:contrl –panel-3.7-7
如果未安裝這個軟體包,則鍵入如下命令:
# rpm –i /mnt/cdrom/Red Hat /rpms /usercfg-3.5-6.i386.rpm
單擊控制面板窗口中的Network Configuration按鈕,出現網路配置器窗口(如圖1所示)。
1)Names標簽
該標簽提供了四個方面的信息:
(1) Hostname(主機名)
包括機器名和機器所在的完整域名。格式為:localhost.local domain,例如,www.jbxue.com,其中www為本地機主名字,jbxue.com為本機所在域名。
(2) Domain(域名)
機器所在的完整域名,即為主機名中的「。」後面部分。這里輸入:linux.net
(3) Search for hostnames in additional domains(在其它域名中尋找主機名)
該項可不填。
(4) Nameservers(名字伺服器)
即 DNS,這項列出了向網路提供域名服務的計算機名單,每行一個。若要提供名字伺服器清單,則應給出ISP服務商提供的域名伺服器的IP地址。例如:163.1.1.4、10.55.0.33 。
2) Hosts標簽
該標簽提供計算機的主機表,主機表放在/etc/host文件中。單擊Hosts標簽,並單擊「Add」按鈕,彈出對話框(圖2)。
主機表文件包含機器名,IP地址及計算機替換名字。如果在小型網中,沒有域名伺服器,則主機表應包含所在網路中所有機器的名字和各自的IP地址。在連網的機器上至少有IP和name兩項。對該表的操作包括增加(Add),編輯(edit),刪除(remove)等操作。
首先編輯本地機項目,在IP欄輸入163.1.5.125,Name欄輸入www.jbxue.com,在nickname 欄中,可以<輸入計算機的替換名稱,如www0,並用空格分隔這些替換名稱。 >
3)Interfaces標簽
這是一個網路介面的配置標簽。在預設情況,該表中提供一個lo項目(本地回環設備),該項目不要刪除,它是Linux網路工作時必需具備的一個項目,對應的IP地址為127.0.0.1。
如果用戶現欲通過乙太網卡接入Internet時,請選中表中eth0項目(註:第一個網卡設備名為 eth0, 第二個為eth1,依次類推)。單擊「Remove」按鈕,刪除掉,然後單擊「Add」按鈕,彈出介面類型對話框(圖3)。
請選中「Ethernet」單選項,單擊「OK」按鈕,出現edit Ethernet/Bus interface對話框。該對話框包含以下內容:
(1) IP段 輸入網卡物理地址,即本機IP地址。如163.1.5.125。
(2) Netmask欄位 輸入子網掩碼,如255.255.0.0。
(3) Network欄位 自動給出163.1.5.0。
(4) Broadcast欄位 自動給出
(5) Activate interface at boot time單選項 在每次啟動時,激活介面,以便使用網路,建議選擇該項。
(6) Allow any user to (de)activate interface選項 允許任一用戶激活或關閉網路介面。對於PPP之類的撥號介面中,每個用戶都要建立網路連接,因此可以選擇該項。對於乙太網連接的用戶,則不必選擇該項。
(7) Interface configuration protocol選項 介面配置協議。指定伺服器向工作站提供網路操作所需信息。可讓本機在每次激活介面時從伺服器取得配置。它有none,BOOT和DHCP三個選項。一般選擇「none」。
4)Routing標簽
該標簽用於配置路由。告訴計算機如何把某些數據傳到網路上的目標主機。如果網路使用預設網關,則只要指出預設網關IP地址以及本機網卡etho。
對以上四個標簽操作完成後,單擊網路配置器窗口中的「save」按鈕,存檔退出。
三、基於X的linuxconf法
首先由root用戶登錄Linux系統,在Gnome環境中,單擊腳印按鈕,指向「system」,選擇「control-panel」子項,以便啟動控制面板,然後單擊System Configuration圖標。或者單擊腳印按鈕,指向「system」選項,選擇linuxconf選項),出現linuxconf在xterm中的工作界面(見圖4)。
⑴打開「Networking / Client tasks / Basic host Information」分支,選擇Host name標簽,輸入主機名字;選擇Adaptor 1標簽,選中「enable」選項,表示能夠使用第一個網卡;選擇配置方式為Manual;然後分別填寫:Primary name + domain(主機名。域名,如:lgx.linux.net)、IP address(主機的IP地址,如:163.1.5.125)、Net mask(子網掩碼,如:255.255.0.0)、Net device(網路設備名eth0)、Kernel mole(內核模塊,如果是ne2000的網卡,那麼應輸入ne)、 I/O port(I/O埠地址,如0x300)、Irq>(中斷號,如3)等選項。
⑵打開「Networking / Client tasks / Name Server Specification(DNS)」分支,彈出Resolve configuration對話框,選中「DNS is required for normal operation」;然後填寫:Default domain (預設域名)和Nameserver1(第一個DNS伺服器的IP地址,如:163.1.1.4;在下一行,還可填寫第二個DNS伺服器的IP地址,如10.55.0.33)選項。
⑶打開「Config / Networking / Routing and gateways」選項,彈出的Defaults對話框,在Default gateway欄位填寫預設的網關IP值,如:163.1.1.254,並選中「enable routing」選項。
⑷接受以上寫入值,激活並退出。
註:在提示符「#」下,若執行linuxconf,則在xterm終端下配置方法與之相類似。
四、基於Web的Linuxconf法
在Red Hat Linux 6.0中,linuxconf也可工作在Web瀏覽器環境,操作方法是:
⑴在gnome-linuxconf對話框中,打開「Config / Networking / Misc / Linuxconf network access」分支。
⑵在對話框中輸入任何允許使用Linuxconf的計算機的主機名,包括用戶主機名字。
⑶選擇「Accept」按鈕,並按空格鍵,單擊「Quit」按鈕。
⑷啟動Netscape瀏覽器,在URL欄鍵入:http://:98/ 其中,必選項hostname應換成用戶計算機的主機名。
⑸選擇瀏覽器頁面底部的「Start」按鈕,在彈出的口令驗證框中,分別輸入root和相應的口令,如果口令正確,
則進入如圖5所示的Linuxconf工作環境。
⑹點擊config框下的「Networking」選項,彈出Network Configurator頁面,在其中的Client tasks框內,點擊「Basic host information」、「Name server specification(DNS)」、「Routing and gateways」,分別輸入主機信息、名字伺服器及路由和網關等信息。
⑺操作完成後,存檔退出。
五、手工使用命令法
手工使用命令法是基於乙太網卡已裝入的情況下,編輯配置文件來配置網路的方法。具體步驟如下:
⑴ 編輯/etc/rc.d/rc.local文件
在該文件中加入類似下列各行:
#配置第一個乙太網卡eth0的IP地址,子網掩碼,UP起激活作用
/sbin/ifconfig,etho 163.1.5.125 netmask 255.255.0.0 UP
#配置並激活回環設備lo
/sbin/ifconfig lo 127.0.0.1 UP
/sbin/route add –host 127.0.0.1 lo
#讓Linux將本地網的信息發送到eth0介面
/sbin/route add –net 163.1.5.125 netmask 255.255.0.0 eth0
#指定訪問遠程網路的預設網關,假定預設網關的IP地址為163.1.1.254
/sbin/route default gw 163.1.1.254 eth0
⑵ 編輯/etc/resdv.conf文件
該文件作用是設置名稱伺服器。可加入下列內容。
#指定本機域名為jbxue.com。
Domain jbxue. com
#域名稱伺服器(DNS),可以是本地網,也可以是遠程網上的。按nameserver的順序#逐一查找。若未找到,則Linux放棄尋找。
Nameserver 163.1.1.4
Nameserver 10.55.0.33
⑶ 編輯/etc/hosts.conf文件
設置主機文件表。可加入如下行:
order hosts,bind
multi on
163.1.5.125 www.jbxue.com www
第一行表示:查找名稱時,首先檢查本地主機文件(hosts),然後按/etc/resolv.conf所指定的Nameservers順序查找。
第三行列出主機IP地址、主機名和別名。
對/etc/rc.d/rc.local,/etc/hosts.conf,/etc/resolv.conf三個文件編輯後,必須重新啟動機器。
五、結束語
綜上所述,只要採用其中的任意一種方法,定義主機名字、主機表、網路介面設備及路由等參數,配置好Linux乙太網,就能接入Internet,享受Internet提供的服務。
㈤ Linux常用網路配置命令
一、查看網路配置
確保網路配置的正確性及網路連接的暢通是Linux系統作為伺服器應用的基礎,查看及測試網路配置是管理Linux網路服務的第一步。
1.ifconfig——查看網路配置
1) 查看所有活動網路介面的信息
執行 ifconfig 或ip addr或ip a命令,都可以顯示當前主機中已啟用(活動)的網路介面信息。、
2) 查看指定網路介面信息
格式:ifconfig 網路介面名
可以通過TX、RX等信息了解到通過該網路介面發送和接收的數據包個數,流量等跟多屬性。
2.hostname命令
在Linux系統中,相當一部分網路服務都會通過主機名來識別本機,如果主機名配置不當,可能會導致程序功能出現故障。
1) 查看主機名
使用hostname命令就可以查看當前主機的主機名,不添加任何選項參數。
2) 臨時更改主機名
hostname NewName
註:這種方法只是臨時的更改主機名,重啟後將失效。
3) 永久更改主機名
a. 修改配置文件
RHEL6和7的配置文件存放路徑不相同,修改配置文件中的主機名,重啟就可永久更改主機名。
RHEL6主機名配置文件路徑為:/etc/sysconfig/network
RHEL7主機名配置文件路徑為:/etc/hostname
示例
b. 使用命令修改(這種方法只適用於RHEL7或者CentOS7之後)
命令格式:
使用該命令更改後,更改後的主機名就自動寫入了配置文件中,所以可以永久更改主機名,其實就是修改了配置文件。
3.route命令
直接執行route命令可以查看當前主機中的路由表信息,若結合「-n」選項使用,可以將路由記錄中的地址顯示為數字形式,這可以跳過解析主機名的過程,在路由表條目較多的情況下能夠加快執行速度。
Destination列對應的是目標網段的地址,Gateway列對應的是嚇一跳路由器的地址,Iface列對應的是發送數據的網路介面。當目標網段為「default」是,表示此行是默認網關記錄,當嚇一跳為「*」是,表示目標網段是與本機直接相連的。
4.netstat命令——查看系統的網路連接狀態等
netstat命令是了解網路狀態及排除網路服務故障的有效工具。
常用選項:
-a:顯示所有活動連接(包括監聽、非監聽狀態的服務埠)
-n:以數字形式顯示
-p:顯示相關的進程信息
-t:查看 TCP 協議相關信息
-u:查看UDP協議相關信息
-r:顯示路由表信息
-l:顯示處於監聽(listening)狀態的網路連接及埠信息
通常使用「-anput」組合選項,結合管道使用「grep」命令,來查看一些服務的埠是否開啟。
示例:
Tcp21為ftp服務的埠
二、測試網路連接
1.ping命令——測試網路連通性
常用選項:
-c<完成次數>:設置完成要求回應的次數
-i<間隔秒數>:指定收發信息的間隔時間
-q:不顯示指令執行過程,開頭和結尾的相關信息除外
-s<數據包大小>:設置數據包的大小
-t<存活數值>:設置存活數值TTL的大小
-v:詳細顯示指令的執行過程
若返回「Destination Host Unreachable」的反饋信息,則表示目標主機不可達,可能目標地址不存在或主機已關閉;返回「Network is unreachable」的反饋信息,則表示沒有可用的路由記錄(如默認網關),無法到達目標主機所在的網路;返回「Request timeout」的反饋信息,表示與目標主機間的連接超時(數據包緩慢或丟失),若有嚴格的防火牆限制,也可能返回此信息。
2.traceroute命令——跟蹤數據包的路由途徑
使用traceroute命令可以測試從當前主機到目的主機之間經過的網路節點,並顯示各中間結點的連接狀態(響應時間)。對於無法響應的節點,連接狀態將顯示為「*」。
示例:traceroute IP_ADDR
在網路測試與排錯的過程中,通常會先使用ping命令測試與主機的網路連接,如果發現網路有故障,再使用traceroute命令跟蹤查看是在哪個中間結點存在故障。
3.nslookup命令——測試DNS域名解析
nslookup是用來測試(DNS)域名解析的專用工具。(DNS服務後面再詳細講解,通俗的說就是將域名解析為ip地址的一個服務)
示例:nslookup www..com
若成功反饋要查詢域名的IP地址,則表示域名解析沒有問題;若出現「...... no servers could be reached」的信息,表示不能連接到指定的DNS伺服器;若出現「...... cant』t find xxx.yyy.zzz:NXDOMAIN」的信息,表示要查詢的域名不存在。
三、設置網路地址參數
設置網路參數的方法:
• 臨時配置 —— 使用命令調整網路參數簡單、快速,可直接修改運行中的網路參數
一般只適合在調試網路的過程中使用
系統重啟以後,所做的修改將會失效
• 永久配置 —— 通過配置文件修改網路參數修改各項網路參數的配置文件
適合對伺服器設置固定參數時使用
需要重載網路服務或者重啟以後才會生效
1.臨時配置——使用網路配置命令(註:RHEL6中網路介面的名稱為eth,RHEL7中為ens)
1)使用ifconfig命令修改網卡的地址、狀態
ifconfig命令不僅可以用於查看網卡配置,還可以修改網卡的ip地址,子網掩碼,也可以綁定網路介面、激活或停用網路介面
a. 修改網卡的ip地址(臨時修改)
命令格式:
示例:
b. 禁用或者重新激活網卡
命令格式:
示例:
c. 設置虛擬網路介面(相當於一塊網卡配置多個IP地址)
命令格式:
示例:
可以根據需要添加更多的虛擬介面,如「eth0:1」「eth0:2」等
2)使用route命令添加、刪除靜態路由記錄
• 刪除路由表中的默認網關記錄命令格式:route del default gw IP地址
• 向路由表中添加默認網關記錄命令格式:route add default gw IP地址
• 添加到指定網段的路由記錄命令格式:route add -net 網段地址 gw IP地址
• 刪除到指定網段的路由記錄命令格式:router del -net 網段地址
2.永久配置——修改網路配置文件
1)網路介面配置文件
網路介面的配置文件默認位於目錄「/etc/sysconfig/network-scripts/」中,文件名格式為:「ifcfg-XXX」,其中「XXX」是網路介面的名稱。例如:RHEL6中網卡eth0的配置文件是「ifcfg-eth0」,而RHEL7中網卡ens33的配置文件是「ifcfg-ens33」。
在網卡的配置文件中,可以看到靜態IP地址的部分內容如下圖所示:
上述個配置項的含義及作用:(圖示為RHEL6中的配置文件,7中也差不多,換湯不換葯,修改的都差不多)
• DEVICE:設置網路介面的名稱ONBOOT:設置網路介面是否在Linux系統啟動時激活BOOTPROTO:設置網路介面的配置方式,值為static時表示使用靜態ip地址,為dhcp時表示通過dhcp的方式動態獲取ip地址IPADDR:設置網路介面的ip地址NETMASK:設置網路介面的子網掩碼GATEWAY:設置網路介面的默認網關地址2)重啟 network 網路服務
當修改了網路介面的配置文件以後,若要使新的配置生效,可以重啟network服務或者重啟主機或者禁用、啟用網路介面。
示例:
• RHEL6中重啟network服務:service network restartRHEL7中重啟network服務:systemctl restart network註:這是我在做實驗時候的一個經驗:RHEL6修改完網卡配置重啟後,ip地址仍然沒有改過來,這時候我們經常會刪除「/etc/udev/rules.d/70-persistent-net.rules」這個文件。RHEL7不用管,RHEL7特別好改,RHEL6改的時候特別難受。(個人提示,不求認同)
3)域名解析配置文件
a.指定為本機提供DNS解析的伺服器地址
/etc/resolv.conf文件中記錄了本機默認使用的DNS伺服器的地址信息,對該文件所做的修改將會立刻生效。Linux系統中最多可以指定3個(第3個以後將被忽略)不同的DNS伺服器地址,優先使用第1個DNS伺服器。
示例:
其中「search localdomain」用來設置默認的搜索域(域名後綴)。例如,當訪問主機「localhost」時,就相當於訪問「localhost.localdomain」。
b.本地主機映射文件
/etc/hosts文件中記錄著一份主機名與ip地址的映射關系表,一般用來保存經常訪問的主機信息。當訪問一個未知的域名時,先查找該文件中是否有相應的映射記錄,如果找不到在去向DNS伺服器查詢。
hosts 文件和 DNS 伺服器的比較
• 默認情況下,系統首先從 hosts 文件查找解析記錄hosts 文件只對當前的主機有效hosts 文件可減少 DNS 查詢過程,從而加快訪問速度
㈥ Linux 應用 網路配置
網路信息查看
設置網路地址:
cat /etc/sysconfig/network-scripts/ifcfg-eth0
你將會看到:
DEVICE=eth0
BOOTPROTO=statics
HWADDR=00:0C:29:13:D1:6F
ONBOOT=yes
TYPE=Ethernet
IPADDR=192.168.0.212
NETMASK=255.255.255.0
BOOTPROTO=statics :表示使用靜太IP地址。
ONBOOT=yes:表示開機時,啟動這個網卡。
取動態IP地址地址
DEVICE=eth0
ONBOOT=yes
BOOTPROTO=dhcp
設置好IP地址,現在還不能生效哦,要重新啟動網卡才可以。
Ifconfig <網路介面名稱> network <子網掩碼>
例:# ifconfig eth0 192.168.1.222 netmask 255.255.255.0
註:手工配置linux網路只限於臨時使用,配置不保存。
擴展:# ifconfig eth0:1 10.0.0.1 netmask 255.0.0.0 一塊網卡配置多個子ip地址。
# ifconfig eth0 hw ether MAC地址 修改網卡的mac地址,
# /etc/rc.d/init.d/network start 啟動network
# /etc/rc.d/init.d/network stop 停止network
# /etc/rc.d/init.d/network restart 重啟network
主機名稱配置文件,修改主機名
/etc/sysconfig/network
例:# vi /etc/sysconfig/network 使用vi編輯器打開主機名配置文件。
# vi /etc/sysconfig/network
NETWORKING=yes 網路是否可用。
HOSTNAME=xxxx xxxx為新設置的主機名。
本地主機名稱解析文件
/etc/hosts
Hosts 和 DNS具有類似的主機名稱解析功能
域名伺服器配置文件
/etc/resolv.conf
最多可以設置3行,前面的生效
查看網路介面信息
1.了解linux中的網路介面設備
$/sbin/ifconfig 查看所有活動網路介面信息,其中包括一個lo環回埠。
2.查看指定網路介面的信息
$/sbin/ifconfig <網路介面名稱> 查看指定介面信息。
3.查看系統中所有網路介面的信息
$/sbin/ifconfig –a 查看所有介面信息,包括非活動狀態介面。
註:普通用戶查看網路介面信息時,需要在命令前加「/sbin」,而管理員卻不用。這是由於命令搜索路徑的原因,可以通過「$echo $PATH」查看。
查看網關地址和路由信息
1、查看主機路由信息
#/route
顯示當前linux主機中的路由表信息。
#/route |grep default
在route命令的顯示結果中以「default」開始的行顯示了,主機的默認網關地址,將route命令和grep命令組合,使用過濾route命令的顯示結果只顯示默認網關地址。
2.測試與其它主機的網路鏈接
$ping 目的主機地址
使用ping命令測試與其它主機的網路鏈接。ctrl+C終止。
$ping –c <測試數據包數量> <目的主機地址>
使用ping命令發送指定數量的數據包進行網路鏈接測試。
$使用ping命令進行網路鏈接測試的技巧。
註:當ping命令測試不成功時並不能判斷當前主機到目標主機的連接是斷開的,因為有很多因素,(如網路防火牆等)可以導致網路連接正常時主機之間無法ping通。
3、測試與其它主機的網路鏈接路徑
$traceroute <目的主機地址>
traceroute命令顯示當前主機與目的主機之間經過的所,有網路節點的地址,以及當前主機到每個中間結點的連接狀態。
查看主機名稱信息
1、查看當前主機名稱
$Hostname 查看當前的主機名。
2、使用dns伺服器查詢域名
$Nslookup
交互模式:通常用於對DNS伺服器進行測試
直接模式:用於查詢某個域名對應的ip地址
使用網路命令進行網路設置
網路設置的方法
1、DHCP網路配置
$Dhclient 使用dhclient命令可以從DHCP伺服器中申請新的網路配置應用到當前主機。
註:DHCP伺服器通常提供給DHCP客戶端最基本的網路配置信息,包括:介面ip地址,默認網關,DNS
伺服器地址。
2、手工網路配置
網路介面ip地址和子網掩碼
默認網關地址
當前主機名稱
DNS伺服器地址
Ip地址配置命令
Ifconfig <網路介面名稱> network <子網掩碼>
例:# ifconfig eth0 192.168.1.222 netmask 255.255.255.0
註:手工配置linux網路只限於臨時使用,配置不保存。
擴展:# ifconfig eth0:1 10.0.0.1 netmask 255.0.0.0 一塊網卡配置多個子ip地址。
# ifconfig eth0 hw ether MAC地址 修改網卡的mac地址,
路由配置命令
1、刪除默認網關路由
$Route del default gw <默認網關地址>
2、添加默認網關路由
$Route add default gw <默認網關地址>
例:#route add default gw 192.168.1.1
主機名稱配置命令
# hostname 123
將主機暫時名稱改為123。
DNS域名解析
Nslookup
>server
顯示linux系統中使用的DNS伺服器地址,也可臨時設置生效。
修改配置文件進行網路設置
使用工具進行網路設置
# Netconfig 圖形界面設置網路,重啟network後生效。
界面中需要填寫的內容:
主機網路介面的ip地址。
網路介面的子網掩碼。
默認網關地址。
主DNS伺服器的ip地址。
網路服務啟動腳本
/etc/init.d/network 從新啟動才能生效
擴展:# /etc/rc.d/init.d/network start 啟動network
# /etc/rc.d/init.d/network stop 停止network
# /etc/rc.d/init.d/network restart 重啟network
網路介面配置文件
/etc/sysconfig/network-scripts/ifconfg-*
DEVICE=eth0 網卡編號
ONBOOT=yes 開機時是否啟動網卡。
BOOTPROTO=static 靜態ip或者DHCP動態獲取。
IPADDR=192.168.1.163 ip
NETMASK=255.255.255.0 掩碼
GATEWAY=192.168.1.1 網關
以下為動態獲取方式:
DEVICE=eth0
ONBOOT=yes
BOOTPROTO=dhcp
停止和啟動指定的網路介面
單個網路介面的配置進行修改後
Ifdown 網路介面名稱 停止某個網路介面。
Ifup 網路介面名稱 開啟某個網路介面。
註:單個網路介面的配置文件進行修改後,不必每次都從新啟動network服務使配置文件生效,可用以上命令。
擴展:對網路介面操作:
# ifconfig eth0 down 停止eth0介面
# ifconfig eth0 up 開啟eth0介面
可以連續使用
Ifdown eth0 ; ifup eth0
主機名稱配置文件
/etc/sysconfig/network
例:# vi /etc/sysconfig/network 使用vi編輯器打開主機名配置文件。
NETWORKING=yes 網路是否可用。
HOSTNAME=xxxx xxxx為新設置的主機名。
本地主機名稱解析文件
/etc/hosts
Hosts 和 DNS具有類似的主機名稱解析功能
域名伺服器配置文件
/etc/resolv.conf
最多可以設置3行,前面的生效。
㈦ 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