網絡概念簡述和Linux網絡管理命令
1. 網絡分類
我們通常接觸到的網絡通常是廣域網、局域網
局域網(Local Area Network,LAN)是指在某一區域內由多臺計算機互聯成的計算機組。
廣域網(Wide Area Network,WAN):網絡跨越國界、洲界,甚至全球范圍。
因特網(Internet)是世界范圍內最大的廣域網。
2. 網絡原理
OSI模型各層總結:
應用層Application:應用程序服務
表示層Presentation:數據加密、壓縮和轉換服務
傳輸層Transport:端到端連接 TCP報頭+上層數據(數據段)
會話層Session:對話控制 上層數據
網絡層Network:路由選擇 IP報頭+數據(分組)
數據鏈路層Data Link:成幀 MAC|LLC+數據+FCS(幀)
物理層Physical:物理拓撲 (比特0111…)
附: TCP/IP 分層
進程/應用層(對于OSI上三層)
傳輸層(對應OSI第四層)
Internet層(對應OSI第三層)
鏈路層(對應OSI第一第二層)
CSMA/CD:
CSMA/CD(Carrier Sense Multiple Access with Collision Detection)即帶沖突檢測的載波監聽多路訪問技術(載波監聽多點介入/碰撞檢測)。在傳統的共享以太網中,所有的節點共享傳輸介質。如何保證傳輸介質有序、高效地為許多節點提供傳輸服務,就是以太網的介質訪問控制協議要解決的問題。
CSMA/CD是一種爭用型的介質訪問控制協議。原理比較簡單,技術上易實現。應用在 OSI 的第二層數據鏈路層。
但在網絡負載增大時,發送時間增長,發送效率急劇下降。
沖突域(Collision Domain):在同一個沖突域中的每一個節點都能收到所有被發送的幀,基于第一層(物理層)
廣播域(Broadcast Domain):網絡中能接收任一設備發出的廣播幀的所有設備的集合,基于第二層(鏈路層)。通常來說一個局域網就是一個廣播域。
MAC地址(Media Access Control): 意譯為媒體訪問控制,或稱為物理地址、硬件地址,用來定義網絡設備的位置。
長度是48比特(6字節),由16進制的數字組成,分為前24位和后24位:
* 前24位叫做組織唯一標志符(Organizationally Unique Identifier,即OUI),是由IEEE的注冊管理機構給不同廠家分配的代碼,區分了不同的廠家。
* 后24位是由廠家自己分配的,稱為擴展標識符。同一個廠家生產的網卡中MAC地址后24位是不同的。
|—>24<–|—>24<–|
|47 | 46 |…
|I/G|G/L|OUI|廠商分配 |
I/G(Individual/Group)位,如果它的值為0,表示是某臺設備的MAC地址,如果為1,表示為以太網中的廣播地址或組播地址。
G/L位,如果它的值為0,表示是IEEE分配,如果為1,表示為本地管理地址。
進程/應用層協議 :Telnet,SSH,FTP,TFTP,SNMP,HTTP,HTTPS,NTP,DNS,DCHP
傳輸層協議:TCP,UDP,STCP
網絡層協議:IP
IPv4 地址分類:
8位 8位 8位 8位
A類: 網絡部分 主機部分 主機部分 主機部分
B類: 網絡部分 網絡部分 主機部分 主機部分
C類: 網絡部分 網絡部分 網絡部分 主機部分
D類: 組播
E類: 用于研究
A類地址:
A類網絡地址第一個字節為0xxxxxxx,2^7=128
但需要注意的是,0和127不是有效的A類地址號,它們是保留地址
A類網絡地址為1~126,共126個
主機數為2^24-2=1677214
B類地址:
B類網絡地址第一個字節為10xxxxxx
B類網絡地址為128.0~191.255,共2^14=16384個
主機數為2^16-2=65534
C類地址:
B類網絡地址為192.0.0~223.255.255,共2^21=2097152個
主機數為254
D、E類地址:
第一個字節為224~255的地址保留。
D類(224~239)用于組播,E類(240~255)用于科學用途。
保留的IP地址:
地址127.0.0.1,用于環回測試
節點地址全為0,表示網絡地址或指定網絡中的任何主機
節點地址全為1,表示指定網絡中的所有節點
整個IP地址為0,一般作為默認網關使用(Linux中的 default,歡迎指出錯誤)
整個IP地址為1,表示廣播
私有地址:
A類:10.0.0.0~10.255.255.255
B類:172.16.0.0~172.31.255.255
C類:192.168.0.0~192.168.255.255
子網掩碼(subnet mask):
又叫網絡掩碼、地址掩碼,它是一種用來指明一個IP地址的哪些位標識的是主機所在的子網,以及哪些位標識的是主機的位掩碼。子網掩碼不能單獨存在,它必須結合IP地址一起使用。子網掩碼只有一個作用,就是將某個IP地址劃分成網絡地址和主機地址兩部分。
3. 網絡設備:
1、傳統以太網操作
傳統共享式以太網的典型代表是總線型以太網。CSMA/CD
2、中繼器(Repeater)
通過中繼器雖然可以延長信號傳輸的距離、實現兩個網段的互連。但并沒有增加網絡的可用帶寬。中繼器連接后構成了一個單個的沖突域和廣播域。
3、集線器(HUB)
集線器同樣可以延長網絡的通信距離,或連接物理結構不同的網絡,但主要還是作為一個主機站點的匯聚點,將連接在集線器上各個接口上的主機聯系起來使之可以互相通信。
集線器和其所有接口所接的主機共同構成了一個沖突域和一個廣播域。
4、網橋(Bridge)
網橋(Bridge)又稱為橋接器。和中繼器類似,傳統的網橋只有兩個端口,用于連接不同的網段。和中繼器不同的是,網橋具有一定的"智能"性,可以"學習"網絡上主機的地址,同時具有信號過濾的功能。
網橋可以將一個沖突域分割為兩個。其中,每個沖突域共享自己的總線信道帶寬。
網橋兩側的兩個網段總線上的所有主機都要接收廣播數據包。因此,網段1和網段2仍屬于同一個廣播域。
5、交換機(Switch)
交換機(Switch)也被稱為交換式集線器。它的出現是為了解決連接在集線器上的所有主機共享可用帶寬的缺陷。
交換機是通過為需要通信的兩臺主機直接建立專用的通信信道來增加可用帶寬的。從這個角度上來講,交換機相當于多端口網橋。
交換機上的每個接口都是自己的一個沖突域。
交換機和其所有接口所連接的主機共同構成了一個廣播域。
6、路由器(Router)
路由器工作在網絡層,可以識別網絡層的地址-IP地址,有能力過濾第3層的廣播消息。
路由器的每個端口所連接的網絡都獨自構成一個廣播域。
每個接口都是自己的一個沖突域。
7.網關(Gateway)
網關工作在OSI參考模型的高三層,因此,并不使用沖突域、廣播域的概念。
網關主要用來進行高層協議之間的轉換。
注意,這里網關的概念完全不同于PC主機以及路由器上配置的默認網關(default gateway)。
“網關”均指TCP/IP協議下的網關。
Note:第三層設備需要確定網絡的設備,而第二層設備需要確定設備的位置。
Linux的網絡管理:
網絡接口命名方式:
CentOS 6: 以太網:eth[0,1,2,…]
ppp:ppp[0,1,2,…]
CentOS 7: 默認可預見的命名規則。這一規則,接口名稱被自動基于固件,拓撲結構和位置信息來確定。現在,即使添加或移除網絡設備,接口名稱仍然保持固定,而無需重新枚舉,和壞掉的硬件可以無縫替換。
Note:下面大寫IP意為IP地址,IF意為interface網絡接口,NM為netmask子網掩碼
ifcfg家族:
ifconfig: 是一個用來查看、配置、啟用或禁用網絡接口的工具。
route: route程序對內核的IP選路表進行操作。
netstat – 顯示網絡連接,路由表,接口狀態,偽裝連接,網絡鏈路信息和組播成員組。?
ifconfig [IF]:查看當前激活的或指定的網絡設備信息
ifconfig IF {up|down}:啟動、關閉指定的網絡設備、網卡
ifconfig IF IP netmask NM :為指定網卡設定IP和掩碼
ifconfig -a 顯示全部接口信息
-promisc 設置是否支持網卡的promiscuous模式,如果選擇此參數,網卡將接收網絡中發給它所有的數據包
ifconfig eth0 arp 開啟網卡eth0 的arp協議
ifconfig eth0 –arp 關閉網卡eth0 的arp協議
Note:立即生效;
route:
route [-f] [-p] [Command [Destination] [mask Netmask] [Gateway] [metric Metric]] [if Interface]]
route –n: 以數字形式代替解釋主機名形式來顯示地址。
route add [-net | -host ] target [netmask NM] [gw GW] [[dev] IF]: 添加一條路由。
例如~]# route add -net 192.168.0.0/24 gw 172.16.0.1 dev eth0
route del [-net|-host] target [gw Gw] [netmask Nm] [[dev] If]:刪除一條路由
route add -net 224.0.0.0 netmask 240.0.0.0 reject 屏蔽一條路由
route add default gw 192.168.0.1 添加默認網關
route表
Destination Gateway Genmask Flags Metric Ref Use Iface
192.168.203.0 0.0.0.0 255.255.255.0 U 1 0 0 eth0
0.0.0.0 192.168.203.2 0.0.0.0 UG 0 0 0 eth0
Flags標志說明:
U Up表示此路由當前為啟動狀態
H Host,表示此網關為一主機
G Gateway,表示此網關為一路由器
R Reinstate Route,使用動態路由重新初始化的路由
D Dynamically,此路由是動態性地寫入
M Modified,此路由是由路由守護程序或導向器動態修改
! 表示此路由當前為關閉狀態
Note:metric是路由跳數。
netstat
顯示當前網絡連接:
-t: tcp協議相關
-u: udp協議相關
-w: raw socket相關
-l: 處于監聽狀態
-a: 所有狀態
-n: 以數字顯示IP和端口;
-e:擴展格式
-p: 顯示相關進程及PID
顯示路由表:
netstat {–route|-r} [–numeric|-n]
-r: 顯示內核路由表
-n: 數字格式
顯示接口統計數據:
netstat {–interfaces|-I|-i} [iface] [–all|-a] [–extend|-e] [–program|-p] [–numeric|-n]
-i:顯示所有接口
-I{IFACE}:顯示指定接口
ip家族:
ip是iproute2軟件包里面的一個強大的網絡配置工具。
格式:ip [OPTIONS] OBJECT [COMMAND [ARGUMENTS]]
這兒僅歸納三個object {link, addr, route}
link 網絡設備、route 路由表條目、address 一個設備的協議(IP或者IPV6)地址
ip link:
ip link set dev IF {up|down}: 設置指定網卡開啟或關閉
ip link set dev IF address MAC:修改指定設備的MAC地址
ip link show [IF]:顯示全部或指定網絡設備信息
ip -s -s link ls IF:顯示更詳細的信息統計
ip addr:
ip addr show 顯示IP地址相關信息
ip addr {add|del} IP/NM broadcast + dev IF label [相關參數]
ip route:
ip route show 顯示路由表相關信息
ip route add TARGET via GW dev IFACE src SOURCE_IP 添加路由條目
例如:ip route add defalt via GW dev IF 添加網關
ip route delete TARGET 刪除路由條目
TARGET:
主機路由時輸入IP即可
網絡路由時需要NETWORK/MASK
ip route flush [dev IFACE] [via PREFIX] 清空路由表
Note相關參數:
primary:指定顯示設定的第一個IP地址
secondary: 指定顯示設定的第二個IP地址
broadcast:配置廣播地址,如果配置值是 + 表示『讓系統自動計算』
label :亦即是這個裝置的別名,例如 eth0:0 就是了!
scope :這個界面的領域,通常是這幾個大類:
global :允許來自所有來源的聯機;
site :僅支持 IPv6 ,僅允許本主機的聯機;
link :僅允許本裝置自我聯機;
host :僅允許本主機內部的聯機;
ss命令: 類似netstat的工具,但是效率比netstat高。
ss [options] [ FILTER ]
-a 顯示所有網絡連接
-l 顯示LISTEN狀態的連接(連接打開)
-m 顯示內存信息(用于tcp_diag)
-o 顯示Tcp 定時器x
-p 顯示進程信息
-s 連接統計
-d 只顯示 DCCP信息 (等同于 -A dccp)
-u 只顯示udp信息 (等同于 -A udp)
-w 只顯示 RAW信息 (等同于 -A raw)
-t 只顯示tcp信息 (等同于 -A tcp)
-x 只顯示Unix通訊信息 (等同于 -A unix)
-4 只顯示 IPV4信息
-6 只顯示 IPV6信息
–help 顯示幫助信息
–version 顯示版本信息
例如:
State Recv-Q Send-Q Local Address:Port Peer Address:Port
ESTAB 0 52 192.168.203.129:ssh 192.168.203.1:62027
CLOSE-WAIT 1 0 192.168.203.129:39957 2.21.84.208:http
[ FILTER ]:= [ state STATE-FILTER ]:TCP狀態篩選
All standard TCP states:
established, syn-sent, syn-recv, fin-wait-1, fin-wait-2, time-wait, closed, close-wait,last-ack, listen closing.
all – for all the states
connected – all the states except for listen and closed
synchronized – all the connected states except for syn-sent
bucket – states, which are maintained as minisockets, i.e. time-wait and syn-recv
big – opposite to bucket
原創文章,作者:Net18_木水,如若轉載,請注明出處:http://www.www58058.com/14937