淺談Linux的路由與網(wǎng)關(guān)
Linux的路由與網(wǎng)關(guān):
路由(Routing):路由是指從一個(gè)設(shè)備(一般指路由器)的接口上接收到數(shù)據(jù)包,依據(jù)設(shè)備所既定的某些規(guī)則,將數(shù)據(jù)包轉(zhuǎn)發(fā)到其它接口的 “過程”。路由工作在OSI參考模型第三層——網(wǎng)絡(luò)層的數(shù)據(jù)包轉(zhuǎn)發(fā)設(shè)備。路由器通過轉(zhuǎn)發(fā)數(shù)據(jù)包來實(shí)現(xiàn)網(wǎng)絡(luò)互連
路由器(Router):路由器是用于連接多個(gè)邏輯上分開的網(wǎng)絡(luò),所謂邏輯網(wǎng)絡(luò)是代表一個(gè)單獨(dú)的網(wǎng)絡(luò)或者一個(gè)子網(wǎng)。當(dāng)數(shù)據(jù)從一個(gè)子網(wǎng)傳輸?shù)搅硪粋€(gè)子網(wǎng)時(shí),可通過路由器的路由功能來完成。因此,路由器具有判斷網(wǎng)絡(luò)地址和選擇IP路徑的功能,它能在多網(wǎng)絡(luò)互聯(lián)環(huán)境中,建立靈活的連接,可用完全不同的數(shù)據(jù)分組和介質(zhì)訪問方法連接各種子網(wǎng),路由器只接受源站或其他路由器的信息,屬網(wǎng)絡(luò)層的一種互聯(lián)設(shè)備(能實(shí)現(xiàn)路由功能的設(shè)備,就叫路由器) 路由表(RouTIng InformaTIon Base ):
路由表是指路由器或者其他互聯(lián)網(wǎng)網(wǎng)絡(luò)設(shè)備上存儲(chǔ)的一張路由信息表,該表中存有到達(dá)特定網(wǎng)絡(luò)終端的路徑,在某些情況下,還有一些與這些路徑相關(guān)的度量。(進(jìn)行數(shù)據(jù)包路由時(shí),所依據(jù)的 規(guī)則 集合。供路由時(shí)選擇)
網(wǎng)關(guān)(Gateway):網(wǎng)關(guān)又稱網(wǎng)間連接器、協(xié)議轉(zhuǎn)換器。網(wǎng)關(guān)在網(wǎng)絡(luò)層以上實(shí)現(xiàn)網(wǎng)絡(luò)互連,是最復(fù)雜的網(wǎng)絡(luò)互連設(shè)備,僅用于兩個(gè)高層協(xié)議不同的網(wǎng)絡(luò)互連。網(wǎng)關(guān)既可以用于廣域網(wǎng)互連,也可以用于局域網(wǎng)互連。 網(wǎng)關(guān)是一種充當(dāng)轉(zhuǎn)換重任的計(jì)算機(jī)系統(tǒng)或設(shè)備。使用在不同的通信協(xié)議、數(shù)據(jù)格式或語言,甚至體系結(jié)構(gòu)完全不同的兩種系統(tǒng)之間,網(wǎng)關(guān)是一個(gè)翻譯器。與網(wǎng)橋只是簡(jiǎn)單地傳達(dá)信息不同,網(wǎng)關(guān)對(duì)收到的信息要重新打包,以適應(yīng)目的系統(tǒng)的需求。同層--應(yīng)用層。(連接2個(gè)以上物理網(wǎng)絡(luò)的設(shè)備)
根據(jù)路由表的管理方式不同,分為=== 靜態(tài)路由:直接用route命令,手動(dòng)增加的路由記錄。=== 動(dòng)態(tài)路由:通過相關(guān)的路由學(xué)習(xí)軟件,比如zebra,這些軟件可以動(dòng)態(tài)的偵測(cè)根據(jù)路由表的存在,分為=== 臨時(shí)路由:route add 命令指派,重啟網(wǎng)卡或者計(jì)算機(jī)的時(shí)候,消失=== 永久路由:路由信息寫入配置文件中,永久存在
linux下查看和設(shè)置路由的命令
route 查看本機(jī)路由表 route
route -n 顯示路由表的時(shí)候,全部用IP地址信息顯示,不顯示主機(jī)名
== route 命令配置靜態(tài)路由 ==
== 增加普通路由
route add -net 10.1.1.0 netmask 255.255.255.0 gw 10.1.1.1
== 增加默認(rèn)路由
1、route add default gw 10.1.1.1 (臨時(shí)指派)
2、網(wǎng)卡配置中的 GATEWAY=10.1.1.1 ----》 默認(rèn)路由----》重啟網(wǎng)卡生效 (永久指派)
== 刪除普通路由:
route del -net 10.1.1.0 netmask 255.255.255.0
== 刪除默認(rèn)路由:
route del default gw 10.1.1.1
== 查詢路由表 route -n
打開作為路由器的 Linux 主機(jī)的核心路由轉(zhuǎn)發(fā)功能
vim /etc/sysctl.conf ##添加下面一行
net.ipv4.ip_forward = 1 ##“0”是關(guān)閉 “1”開啟(保存退出)
執(zhí)行命令: sysctl -p #讓修改核心路由轉(zhuǎn)發(fā)功能即時(shí)生效
總結(jié) ping :包的 三種故障解析 :
1、connect: Network is unreachable 網(wǎng)絡(luò)不可達(dá): 本機(jī) 路由表無法判定
2、DesTInaTIon Host Unreachable 主機(jī)不可達(dá): 局域網(wǎng)中無法找到對(duì)應(yīng)IP的MAC地址,無法完成封裝
3、 destination net unreachable 來自于下一跳主機(jī)的回應(yīng), 本機(jī)將包轉(zhuǎn)發(fā)給網(wǎng)關(guān)時(shí),網(wǎng)關(guān)也無法到達(dá)目標(biāo)網(wǎng)絡(luò)