一.Ip協(xié)議特征
(1)internet協(xié)議特征
- 運(yùn)行于 OSI 網(wǎng)絡(luò)層 ?
- 面向無(wú)連接的協(xié)議 ?
- 獨(dú)立處理數(shù)據(jù)包 ?
- 分層編址 ?
- 盡力而為傳輸 ?
- 無(wú)數(shù)據(jù)恢復(fù)功能
二.IP PDU 報(bào)頭
(1)基本特征
- 版本:占4位,單位bit 。指 IP 協(xié)議的版本目前的IP協(xié)議版本號(hào)為4 ?
- 首部長(zhǎng)度:占4位,可表示的最大數(shù)值是15個(gè)單位缕允,一個(gè)單位為4字節(jié) 凉当,因此IP 的首部長(zhǎng)度的最大值是60字節(jié),首部字節(jié)范圍是20-60字節(jié) ?
- 區(qū)分服務(wù):占8位,用來(lái)獲得更好的服務(wù),在舊標(biāo)準(zhǔn)中叫做服務(wù)類型,但 實(shí)際上一直未被使用過(guò).后改名為區(qū)分服務(wù).只有在使用區(qū)分服務(wù) (DiffServ)時(shí),這個(gè)字段才起作用.一般的情況下都不使用 ?
- 總長(zhǎng)度:占16位,指首部和數(shù)據(jù)之和的長(zhǎng)度,單位為字節(jié),因此數(shù)據(jù)報(bào)的 最大長(zhǎng)度為 65535 字節(jié).總長(zhǎng)度必須不超過(guò)最大傳送單元 MTU ?
- 標(biāo)識(shí):占16位,它是一個(gè)計(jì)數(shù)器,通常兑障,每發(fā)送一個(gè)報(bào)文胎源,改值會(huì)加1 , 也用于數(shù)據(jù)包分片恨统,在同一個(gè)包的若干分片中纷纫,該值是相同的 ?
- 標(biāo)志(flag):占3位,目前只有后兩位有意義 ? DF: Don‘t Fragment枕扫,中間的一位,只有當(dāng) DF=0 時(shí)才允許分片 ?
- MF: More Fragment辱魁,最高位烟瞧,MF=1表示后面還有分片。MF=0 表示最后一個(gè)分片
- 片偏移:占12位,指較長(zhǎng)的分組在分片后染簇,該分片在原分組中 的相對(duì)位置.片偏移以8個(gè)字節(jié)為偏移單位 ?
- 生存時(shí)間:占8位,記為TTL (Time To Live) 數(shù)據(jù)報(bào)在網(wǎng)絡(luò)中 可通過(guò)的路由器數(shù)的最大值,TTL 字段是由發(fā)送端初始設(shè)置一 個(gè) 8 bit字段.推薦的初始值由分配數(shù)字 RFC 指定,當(dāng)前值為 64.發(fā)送 ICMP 回顯應(yīng)答時(shí)經(jīng)常把 TTL 設(shè)為最大值 255 ?
- 協(xié)議:占8位,指出此數(shù)據(jù)報(bào)攜帶的數(shù)據(jù)使用何種協(xié)議以便目的
主機(jī)的IP層將數(shù)據(jù)部分上交給哪個(gè)處理過(guò)程, 1表示為 ICMP 協(xié)議, 2表示為 IGMP 協(xié)議, 6表示為 TCP 協(xié)議, 17表示為 UDP 協(xié)議 ? - 首部檢驗(yàn)和:占16位,只檢驗(yàn)數(shù)據(jù)報(bào)的首部不檢驗(yàn)數(shù)據(jù)部分.這 里不采用 CRC 檢驗(yàn)碼而采用簡(jiǎn)單的計(jì)算方法 ?
- 源地址和目的地址:都各占4字節(jié),分別記錄源地址和目的地址
三.IP地址
- 它們可唯一標(biāo)識(shí) IP 網(wǎng)絡(luò)中的每臺(tái)設(shè)備 ?
- 每臺(tái)主機(jī)(計(jì)算機(jī)参滴、網(wǎng)絡(luò)設(shè)備、外圍設(shè)備)必須具有唯 一的地址 ?
- IP地址由兩部分組成:
(一)網(wǎng)絡(luò)ID:
標(biāo)識(shí)網(wǎng)絡(luò)
每個(gè)網(wǎng)段分配一個(gè)網(wǎng)絡(luò)ID
(二) 主機(jī) ID:
標(biāo)識(shí)單個(gè)主機(jī)
由組織分配給各設(shè)備
(三)IPv4地址格式:點(diǎn)分十進(jìn)制記法
示例:Ipv4地址格式
該ip地址為32位地址锻弓,將每八位分為一段砾赔,劃分為四組八位二進(jìn)制數(shù)
11000000.10101000.10001000.11000010
轉(zhuǎn)化為十進(jìn)制數(shù),方便讀取——192.168.136.162
(四)IP地址分類
主要分為五類:A 青灼、B暴心、C、D杂拨、E
(1)A類:采用ipv4方式专普,一共由32位組成,其中前八位是網(wǎng)絡(luò)id弹沽,后24位是主機(jī)id檀夹。
網(wǎng)絡(luò)范圍是:00000000——01111111對(duì)應(yīng)十進(jìn)制數(shù)是0——127。
ip地址的范圍是1-126(減去未知地址0.0.0.0和回環(huán)地址127.0.0.1)
主機(jī)數(shù):2^24-2個(gè)——后24位全為0代表為某網(wǎng)絡(luò)id策橘,后24位全為1的時(shí)候是某網(wǎng)絡(luò)廣播
默認(rèn)子網(wǎng)掩碼:255.0.0.0
私網(wǎng)地址:10.0.0.0
公式1:計(jì)算網(wǎng)絡(luò)中主機(jī)最大數(shù)量=2^主機(jī)位數(shù)-2
(2)B類:前16位是網(wǎng)絡(luò)id炸渡,后16位是主機(jī)id
網(wǎng)絡(luò)數(shù):2^14
主機(jī)數(shù):2^16-2
ip地址范圍:128-191
默認(rèn)子網(wǎng)掩碼:255.255.0.0
私網(wǎng)地址:172.16.0.0-172.31.0.0
公式2:網(wǎng)絡(luò)數(shù)=2^可變網(wǎng)絡(luò)id位
(3)c類:
ip地址開頭范圍:11000000——11011111對(duì)應(yīng)十進(jìn)制數(shù)192——223
網(wǎng)絡(luò)數(shù):2^21-2
主機(jī)數(shù):2^8-2
默認(rèn)子網(wǎng)掩碼:255.255.255.0
私網(wǎng)地址:192.168.0.0-192.168.255.0
(4)d類:組播
1110 0000 - 1110 1111: 224-239
(5)E類:
240-255
(五)公共ip與私有ip
(1)公共IPimage.png
(2)私有IP地址
image.png
雙方的區(qū)分方式:公共IP不需要注冊(cè),而私有ip需要注冊(cè)役纹,且僅限于局域網(wǎng)中使用
(六)一些特殊地址的介紹
(1)0.0.0.0
0.0.0.0不是一個(gè)真正意義上的IP地址偶摔。它表示的含義是包含所有的未知地址 ?
(2)255.255.255.255
限制廣播地址暇唾。對(duì)本機(jī)來(lái)說(shuō)促脉,這個(gè)地址指本網(wǎng)段內(nèi)(同一廣播域)的所有主機(jī) ?
(3)127.0.0.1~127.255.255.254
本機(jī)回環(huán)地址,主要用于測(cè)試策州。在傳輸介質(zhì)上永遠(yuǎn)不應(yīng)該出現(xiàn)目的地址為 “127.0.0.1”的 數(shù)據(jù)包瘸味。 ?
(4)224.0.0.0到239.255.255.255
組播地址,224.0.0.1特指所有主機(jī)够挂,224.0.0.2特指所有路由器旁仿。
224.0.0.5指OSPF 路由器,地址多用于一些特定的程序以及多媒體程序 ?
(5)169.254.x.x 如果Windows主機(jī)使用了DHCP自動(dòng)分配IP地址
(七)子網(wǎng)掩碼
(1)特征:32位二進(jìn)制數(shù)組成,對(duì)應(yīng)的網(wǎng)絡(luò)id為1枯冈,主機(jī)id為0
(2)網(wǎng)絡(luò)id:ip與網(wǎng)絡(luò)掩碼相與——通過(guò)CIDR表示法(無(wú)類域問(wèn)路由毅贮,網(wǎng)絡(luò)id與id不是固定不變)
(3)劃分子網(wǎng):將一個(gè)大網(wǎng)絡(luò)分割成多個(gè)小網(wǎng)絡(luò),每個(gè)小網(wǎng)絡(luò)主機(jī)數(shù)id減少尘奏,網(wǎng)絡(luò)id增多滩褥,原來(lái)的大網(wǎng)絡(luò)id向主機(jī)id位借位
(4)劃分超網(wǎng):把多個(gè)小網(wǎng)絡(luò)合成一個(gè)大網(wǎng)絡(luò),每個(gè)網(wǎng)絡(luò)id變小炫加,主機(jī)id變多瑰煎,原來(lái)主機(jī)id位向網(wǎng)絡(luò)位借位
公式三:CIDR表示法=IP或網(wǎng)絡(luò)ip/網(wǎng)絡(luò)id位數(shù)
公式四:劃分子網(wǎng)數(shù)量=2^網(wǎng)絡(luò)id向主機(jī)借的位數(shù)
公式五:劃分子網(wǎng)后損失的ip數(shù)=(劃分子網(wǎng)數(shù)量-1)*2
例題:ip地址為 160.200.0.0/16——?jiǎng)澐质鶄€(gè)子網(wǎng)
問(wèn):
(1)劃分子網(wǎng)的netmask
解析:根據(jù)公式四可知,網(wǎng)絡(luò)id向主機(jī)位借了4位俗孝,因此可知子網(wǎng)掩碼為20個(gè)1酒甸,則netmask是:255.255.240.0
(2)每個(gè)子網(wǎng)主機(jī)數(shù):
根據(jù)公式一可知:主機(jī)數(shù)=2^(32-20)-2=4094
(3)最小,最大子網(wǎng)網(wǎng)絡(luò)id:
因?yàn)橄蛑鳈C(jī)借了四位赋铝,所以網(wǎng)絡(luò)的最小id為0000——160.200.0.0,最大id為1111——160.200.240.0
(4)最大子網(wǎng)Ip范圍:
主機(jī)位最少為1插勤,最大為254,所以范圍是160.200.0.1/20——160.200.0.254/20
四.跨網(wǎng)絡(luò)通信(路由)
跨網(wǎng)絡(luò)通信:路由 ?
實(shí)現(xiàn)過(guò)程:
路由分類:
主機(jī)路由
網(wǎng)絡(luò)路由
默認(rèn)路由 ?
優(yōu)先級(jí):精度越高革骨,優(yōu)先級(jí)越高
(一)DHCP:動(dòng)態(tài)主機(jī)配置協(xié)議
image.png
(二)基本網(wǎng)絡(luò)配置
- 將Linux主機(jī)接入到網(wǎng)絡(luò)饮六,需要配置網(wǎng)絡(luò)相關(guān)設(shè)置。 ?
- 一般包括如下內(nèi)容: 主機(jī)名 IP/netmask
路由:默認(rèn)網(wǎng)關(guān)
接口命名方式:CentOS 6 以太網(wǎng):eth[0,1,2,...] ppp:ppp[0,1,2,...] ?
DNS服務(wù)器
主DNS服務(wù)器 次DNS服務(wù)器 第三DNS服務(wù)器
(3)CentOS 6網(wǎng)卡名稱
image.png
網(wǎng)絡(luò)接口識(shí)別并命名相關(guān)的udev配置文件: /etc/udev/rules.d/70-persistent-net.rulesimage.png
查看網(wǎng)卡:
dmesg |grep –iimage.png
或是eth ethtool -i eth0 ?image.png
卸載網(wǎng)卡驅(qū)動(dòng):
modprobe -r e1000image.png
rmmod e1000 ?image.png
裝載網(wǎng)卡驅(qū)動(dòng): modprobe e1000
五.CentOS 6網(wǎng)卡名稱
接口命名方式:CentOS 6
以太網(wǎng):eth[0,1,2,...] ppp:ppp[0,1,2,...] ?
image.png
網(wǎng)絡(luò)接口識(shí)別并命名相關(guān)的udev配置文件: /etc/udev/rules.d/70-persistent-net.rules
查看網(wǎng)卡: dmesg |grep –i eth ethtool -i eth0 ?image.png
卸載網(wǎng)卡驅(qū)動(dòng): modprobe -r e1000 rmmod e1000 ?
裝載網(wǎng)卡驅(qū)動(dòng): modprobe e1000
(一)網(wǎng)絡(luò)配置方式
ifconfig, route, netstat
ip: object {link, addr, route},
ss, tc system-config-network-tui苛蒲,
setup 配置文件
動(dòng)態(tài)分配: DHCP: Dynamic Host Configuration Protocol
(二).配置網(wǎng)絡(luò)接口
- ifconfig命令
ifconfig [interface]——ifconfig eth0,eth1,查看網(wǎng)卡信息
ifconfig -a :查看所有網(wǎng)卡
ifconfig IFACE [up|down]:?jiǎn)⒂寐遍希镁W(wǎng)卡
ifconfig eth0 down:禁用網(wǎng)卡,up 啟用網(wǎng)卡
ifconfig IFACE IP/netmask [up]
ifconfig IFACE IP netmask NETMASK
例如:ifconfig eht1 172.18.138.156/16 ——對(duì)該網(wǎng)卡配置ip
注意:立即生效
啟用混雜模式:[-]promisc
(三).route命令
默認(rèn)路由臂外,網(wǎng)關(guān):172.16.0.1
route add -net 0.0.0.0 netmask 0.0.0.0 gw 172.16.0.1
route add default gw 172.16.0.1 ?
刪除:
route del
route del [-net|-host] target [gw Gw] [netmask Nm] [[dev] If] ?
route del -host 192.168.1.3 ?gw 172.16.0.1 dev eth1
目標(biāo):192.168.0.0 網(wǎng)關(guān):172.16.0.1
route del -net 192.168.0.0 netmask 255.255.255.0或route del -net 192.168.0.0/24
(四)netstat命令
顯示路由表:
netstat {--route|-r} [--numeric|-n]
-r: 顯示內(nèi)核路由表 -n: 數(shù)字格式 ?
image.pngimage.png
顯示接口統(tǒng)計(jì)數(shù)據(jù): netstat {--interfaces|-I|-i} [iface] [--all|-a] [-extend|-e] [--program|-p] [--numeric|-n]
netstat -i
netstat –I=IFACE——注意該命令中間不能有空格:netstat -Ieth0或是netstat -I=eth0
ifconfig -s eth0
(五)ip命令
(1) ip addr { add | del } IFADDR dev STRING
[label LABEL]:添加地址時(shí)指明網(wǎng)卡別名
[scope {global|link|host}]:指明作用域
global: 全局可用
link: 僅鏈接可用
host: 本機(jī)可用
[broadcast ADDRESS]:指明廣播地址
ip address flush ——清除Ip地址
例:ip addr add 172.18.123.100/16 dev eth0 label eth0:0
image.png
ip addr del 172.16.100.100/16 dev eth0 label eth0:0image.png
ip addr flush dev eth0 label eth0:0
ip addr flush dev eth1
image.png
通過(guò)ip link set up dev eth1開啟網(wǎng)卡
再執(zhí)行ifconfig eht1 down 最后再開啟 ifconfig eth1 upimage.png
(2) ip route - routing table management
添加路由:ip route add
ip route add TARGET via GW dev IFACE src SOURCE_IP
TARGET:
主機(jī)路由:IP
網(wǎng)絡(luò)路由:NETWORK/MASK ip route add 192.168.0.0/24 via 172.16.0.1 ip route add 192.168.1.13 via 172.16.0.1
添加網(wǎng)關(guān):ip route add default via GW dev IFACE ip route add default via 172.16.0.1
刪除路由:ip route delete ip route del TARGET
顯示路由:ip route show|list
清空路由表:ip route flush [dev IFACE] [via PREFIX] ip route flush dev eth0
例題:
ip route add 192.168.0.0/24 via 172.18.0.1
ip route add 192.168.10.12 via 172.18.0.1
ip route add default via 172.18.0.1或gw dev eth1
刪除路由:ip route del 或是flush
ip route del 172.18.0.0/24 dev eth1
ip route flush 172.18.0.0/24 dev eth1
(六)網(wǎng)絡(luò)配置文件
(1)IP窟扑、MASK、GW漏健、DNS相關(guān)配置文件:
/etc/sysconfig/network-scripts/ifcfg-IFACEimage.png
DEVICE和HWADDR是網(wǎng)卡的標(biāo)識(shí)嚎货,也就是說(shuō)即使將eth1改成haha,通過(guò)ip a顯示也仍是eth1
bootp NM_CONTROLLED:NM是NetworkManager的簡(jiǎn)寫, 此網(wǎng)卡是否接受NM控制瓦盛;建議CentOS6為“no”——手動(dòng)設(shè)置service NetworkManager stop
路由相關(guān)的配置文件:
/etc/sysconfig/network-scripts/ifcfg-IFACE:
DEVICE:此配置文件應(yīng)用到的設(shè)備
HWADDR:對(duì)應(yīng)的設(shè)備的MAC地址
BOOTPROTO:激活此設(shè)備時(shí)使用的地址配置協(xié)議,常 用的dhcp, static, none, 也可以不寫蔫浆,表示不要自動(dòng)獲取殖属,通過(guò)自己手動(dòng)配置來(lái)獲取固定IP地址
image.png
ONBOOT:在系統(tǒng)引導(dǎo)時(shí)是否激活此設(shè)備 ?
TYPE:接口類型洗显;常見有的Ethernet, Bridge ?
UUID:設(shè)備的惟一標(biāo)識(shí) ?
IPADDR:指明IP地址 ——當(dāng)BOOTPROTO=none或是static時(shí),手動(dòng)來(lái)配置新ip地址
NETMASK:子網(wǎng)掩碼 ?
GATEWAY: 默認(rèn)網(wǎng)關(guān) ?
DNS1:第一個(gè)DNS服務(wù)器指向 ?
DNS2:第二個(gè)DNS服務(wù)器指向 ?
USERCTL:普通用戶是否可控制此設(shè)備 ?
PEERDNS:如果BOOTPROTO的值為“dhcp”原环,是否允許 dhcp server分配的dns服務(wù)器指向信息直接覆蓋至 /etc/resolv.conf文件中
在/etc/sysconfig/network也可以修改先關(guān)信息
在配置文件和network中同時(shí)設(shè)置網(wǎng)關(guān)挠唆,通過(guò)ip a顯示的是配置文件的網(wǎng)關(guān),這表明了配置文件的優(yōu)先級(jí)高于network
配置路由:/etc/sysconfig/network-scripts/route-IFACE
注意:需service network restart生效
兩種風(fēng)格:
(1) TARGET via GW 如:10.0.0.0/8 via 172.16.0.1
image.png
(2) 每三行定義一條路由
ADDRESS#=TARGET
NETMASK#=mask
GATEWAY#=GWimage.png
(七)主機(jī)名和本地解析器
配置當(dāng)前主機(jī)的主機(jī)名:
hostname [HOSTNAME] /etc/sysconfig/network
HOSTNAME= ?
解析器執(zhí)行正向和逆向查詢 ?
本地主機(jī)名數(shù)據(jù)庫(kù)和IP地址的映像
對(duì)小型獨(dú)立網(wǎng)絡(luò)有用
通常玄组,在使用DNS前檢查
getent hosts 查看/etc/hosts 內(nèi)容:
image.png
(八)網(wǎng)卡別名
將多個(gè)ip設(shè)置到一個(gè)網(wǎng)卡上
ifconfig eth0:0 192.168.1.100/24 up
eth0:1 、eth0:2、 eth0:3
(1)使用ifconfig設(shè)置別名
image.png
ifconfig eth0:0 downimage.png
(2)使用ip命令設(shè)置別名
ip addr add 172.16.1.2/16 dev eth0
ip addr add 172.16.1.1/16 dev eth0 label eth0:0
image.png
ip addr add 172.16.1.2/16 dev eth0 label eth0:0
ip addr del 172.16.1.1/16 dev eth0 label eth0:0
ip addr flush dev eth0 label eth0:0image.png
注意:以上方法屬于臨時(shí)有效俄讹,開機(jī)就會(huì)自動(dòng)消失哆致,想要保存就要通過(guò)配置文件的設(shè)置來(lái)實(shí)現(xiàn)
(1)關(guān)閉NetworkManager服務(wù)
service NetworkManager stop
chkconfig NetworkManager off
(2)配置格式
ifcfg-ethX:xxx ? 必須使用靜態(tài)聯(lián)網(wǎng)
DEVICE=eth0:0
IPADDR=10.10.10.10
NETMASK=255.0.0.0 ONPARENT=yes ?
注意:service network restart 生效image.png
網(wǎng)關(guān)也要設(shè)置成不同的網(wǎng)關(guān)
(九 )網(wǎng)絡(luò)接口配置-bonding
Bonding 就是將多塊網(wǎng)卡綁定同一IP地址對(duì)外提供服務(wù),可以實(shí)現(xiàn)高 可用或者負(fù)載均衡患膛。當(dāng)然沽瞭,直接給兩塊網(wǎng)卡設(shè)置同一IP地址 是不可能的。通過(guò)bonding剩瓶,虛擬一塊網(wǎng)卡對(duì)外提供連接驹溃, "物理網(wǎng)卡的被修改為相同的MAC地址"。
(1)主要模式
- Mode 0 (balance-rr) 輪轉(zhuǎn)(Round-robin)策略:從頭到尾順序的在每一個(gè)slave 接口上面發(fā)送數(shù)據(jù)包延曙。本模式提供負(fù)載均衡和容錯(cuò)的能力 ?
- Mode 1 (active-backup) 活動(dòng)-備份(主備)策略:只有一個(gè)slave被激活豌鹤,當(dāng)且僅當(dāng)活動(dòng) 的slave接口失敗時(shí)才會(huì)激活其他slave。為了避免交換機(jī)發(fā)生混 亂此時(shí)綁定的MAC地址只有一個(gè)外部端口上可見 ?
- Mode 3 (broadcast) 廣播策略:在所有的slave接口上傳送所有的報(bào)文,提供容錯(cuò)能力 ?active-backup枝缔、balance-tlb 和 balance-alb 模式不需要 交換機(jī)的任何特殊配置布疙。其他綁定模式需要配置交換機(jī)以便 整合鏈接。如:Cisco 交換機(jī)需要在模式 0愿卸、2 和 3 中使用 EtherChannel灵临,但在模式4中需要 LACP和 EtherChannel
(2)創(chuàng)建bonding設(shè)備的配置文件 ?
/etc/sysconfig/network-scripts/ifcfg-bond0
DEVICE=bond0
BOOTPROTO=none
BONDING_OPTS= “miimon=100 mode=0” ?
/etc/sysconfig/network-scripts/ifcfg-eth0 DEVICE=eth0 BOOTPROTO=none MASTER=bond0 SLAVE=yes USERCTL=no ?
查看bond0狀態(tài):/proc/net/bonding/bond0
miimon 是用來(lái)進(jìn)行鏈路監(jiān)測(cè)的。如果miimon=100趴荸,那 么系統(tǒng)每100ms 監(jiān)測(cè)一次鏈路連接狀態(tài)儒溉,如果有一條線 路不通就轉(zhuǎn)入另一條線路 ? 刪除bond0 ifconfig bond0 down rmmod bonding