IP地址
它們可唯一標識 IP 網絡中的每臺設備
每臺主機(計算機、網絡設備、外圍設備)必須具有唯一的地址
IP地址由兩部分組成:
網絡ID:
標識網絡
每個網段分配一個網絡ID
主機 ID:
標識單個主機
由組織分配給各設備
MAC地址沒有管理性
IP地址可管理性標識性高
子網掩碼標識網絡ID和主機ID
地址分類
二進制
A類地址:前八位是網絡ID
1-126.x.x.x
一個A類網絡主機數1600萬
網段公式:
網段數=2^可變網絡ID位數
一個網絡的主機數量=2^主機ID位數-2
B類地址:16位網絡ID,16位主機地址
128-192.x.x.x
10xxxxxx.xxxxxxxx.y.z
主機數65534
C類地址:24位網絡ID,8位主機ID
192-223.x.x.x
110xxxxx.xxxxxxxx.xxxxxxxx.x
主機數:2^8-2=253
D類地址:多播
224-239.x.x.x
E類地址:保留
240-255
無類:網絡ID,主機ID不確定
CIDR 無類域間路由
子網掩碼(netmask):32位二進制數,以十進制顯示
一個IP對應一個netmask,網絡ID位數,netmask對應為1,主機位ID位數,netmask為0
A類掩碼:255.0.0.0
B類掩碼:255.255.0.0
C類掩碼:255.255.255.0
D類和E類為特殊,沒有掩碼
共有IP地址
私有IP地址
子網劃分:將一個大網絡(主機多=主機ID位數,網絡ID位數少)劃分成多個小網絡(主機少=主機ID位數,網絡ID位數多),網絡ID位向主機ID位借N位,劃分成2^N個小網
公式
劃分子網數=劃分成2^N個(網絡ID位向主機ID位借N位)
00000000 0
10000000 128
11000000 192
11100000? 224
11110000? 240
11111000? 248
11111100? 252
11111110? 254
11111111? 255
子網掩碼和IP對位相與判斷網絡位
A:192.168.1.100/16
B:192.168.2.100/24
以上兩個IP互qing,A能ping通B,A會以自己的掩碼16位來判斷兩個IP,Bping不通A,B會以自己的掩碼24位來判斷兩個IP
單臂路由:通過路由器的配置,使同一交換機的兩個VLAN互聯互通
網絡聚合
合并超網:多個小網合并成一個大網,主機ID位向網絡ID位借位
公有地址:國際分配
私有地址:自己使用
特殊地址
0.0.0.0
0.0.0.0不是一個真正意義上的IP地址。它表示一個集合:所有不清楚的主機和目的網絡。
255.255.255.255
限制廣播地址。對本機來說,這個地址指本網段內(同一廣播域)的所有主機
127.0.0.1~127.255.255.254
本機回環地址,主要用于測試。在傳輸介質上永遠不應該出現目的地址為“127.0.0.1”的 數據包。
224.0.0.0到239.255.255.255
組播地址,224.0.0.1特指所有主機,224.0.0.2特指所有路由器。224.0.0.5指OSPF 路由器,地址多用于一些特定的程序以及多媒體程序
169.254.x.x
如果Windows主機使用了DHCP自動分配IP地址,而又無法從DHCP服務器獲取地址,系統會為主機分配這樣地址。
跨網絡通信:路由
路由分類:
主機路由
主機路徑
網絡路由
主機網段路徑
默認路由
0.0.0.0
優先級:精度越高,優先級越高
路由表構成:
1目標:數據包發送的目標路徑
2子網掩碼netmask
3接口interface:本路由器的出口
4網關gateway
1)直連:不需要配置
2)非直連:下一個路由器鄰近本路由器的接口地址,下一跳
網卡配置添加網關是為了添加默認路由
A—1 R1 2 —3 R2 4— 5 R3 6 — B
firefox http://www.magedu.com
0 dns
1 A判斷B和A是否在一個網段
2 A gateway:R1 IP1
ARP IP1 —> MAC1
APR cache : IP1–MAC1
frame:dest mac:mac1 src mac:macA
ip: dest ip:IPB src ip: IPA
tcp:dest port:80 src port:xxxxx,syn
3 R1 查路由表
net B 2 IP3
ARP IP3 —> mac3
frame:dest mac:mac3 src mac:mac2
ip: dest ip:IPB src ip: IPA
tcp:dest port:80 src port:xxxxx,syn
4 R2 查路由表
net B 4? IP5
ARP IP5 —> mac5
frame:dest mac:mac5 src mac:mac4
ip: dest ip:IPB src ip: IPA
tcp:dest port:80 src port:xxxxx,syn
5 R3 查路由表
net B 6
ARP IPB —> macB
frame:dest mac:macB src mac:mac6
ip: dest ip:IPB src ip: IPA
tcp:dest port:80 src port:xxxxx,syn
基本網絡配置
將Linux主機接入到網絡,需要配置網絡相關設置。
一般包括如下內容:
主機名
IP/netmask
路由:默認網關
DNS服務器
主DNS服務器
次DNS服務器
第三DNS服務器
Linux中主機名只具有本地意義;在Windows中計算機名具有網絡功能
tcpdump? 抓包工具
CentOS 6網卡名稱
接口命名方式:CentOS 6
以太網:eth[0,1,2,…]
ppp:ppp[0,1,2,…]
網絡接口識別并命名相關的udev配置文件:
/etc/udev/rules.d/70-persistent-net.rules
查看網卡:
dmesg |grep –i eth
ethtool -i eth0
卸載網卡驅動:
modprobe -r e1000
rmmod e1000
裝載網卡驅動:
modprobe e1000
網絡配置方式
靜態指定:
ifconfig, route, netstat
ip: object {link, addr, route}
ip link:查看網卡狀態(物理狀態)
ss:查看 ssh連接的ip
tc
ifconfig [網卡名] down/up 禁用/啟用網卡
ifdown:禁用網卡
ifup:啟用網卡
以上兩個命令局限于配置文件
system-config-network-tui,setup
配置文件
動態分配:
DHCP: Dynamic Host Configuration Protocol
route命令
路由管理命令
route -n 查看
route add 添加
route del 刪除
route add [-net網絡|-host僅主機] target [netmask Nm] [gw Gw] [[dev] If]
目標:192.168.1.3 網關:172.16.0.1
route add -host 192.168.1.3 gw 172.16.0.1 dev eth0
目標:192.168.0.0 網關:172.16.0.1
route add -net 192.168.0.0 netmask 255.255.255.0 gw 172.16.0.1 dev eth0
route add -net 192.168.0.0/24 gw 172.16.0.1 dev eth0
網卡配置文件:/etc/sysconfig/network-scripts/ifcfg-ethx(centos6)
DEVICE=ethx
BOOTPROTO=static/dhcp/none
IPADDR=ip
NETMASK=255.255.255.0/PREFIX=24
GATEWAY=網關
DNS1=
DNS2=
DNS3=
修改mac地址:配置文件中HWADDR=改成MACADDR=(適用場景:網絡配置綁定mac地址,訪問網絡時)
centos6要關閉NetworkManager新加網卡配置才能生效
service NetworkManager stop
chkconfig NetworkManager off
echo 1 > /proc/sys/net/ipv4/ip_forward 開啟系統上的路由轉發功能,否則目的不是本機的包則丟棄
traceroute [ip] 跟蹤路由
mtr [ip] 動態跟蹤路由
tracepath [ip] 跟蹤路由
netstat 等同于ss命令:查看進程端口
網絡接口配置-bonding
Bonding
將多塊網卡綁定同一IP地址對外提供服務,可以實現高可用或者負載均衡。直接給兩塊網卡設置同一IP地址是不可以的。通過bonding,虛擬一塊網卡對外提供連接,物理網卡的被修改為相同的MAC地址
Bonding工作模式
Mode 0 (balance-rr)輪詢策略,提供負載均衡和容錯的能力
Mode 1 (active-backup)主備策略,熱備份
Mode 3 (broadcast)廣播策略,提供容錯能力
Bonding配置
創建bonding設備的配置文件
/etc/sysconfig/network-scripts/ifcfg-bond0
DEVICE=bond0
BOOTPROTO=none
BONDING_OPTS= “miimon=100 mode=0” #miimon鏈路檢測
/etc/sysconfig/network-scripts/ifcfg-eth0
DEVICE=eth0
BOOTPROTO=none
MASTER=bond0
SLAVE=yes
USERCTL=no
查看bond0狀態:/proc/net/bonding/bond0
bonding刪除
ifconfig bond0 down
rmmod bonding
網卡名稱
基于BIOS支持啟用biosdevname軟件
內置網卡:em1,em2
pci卡:pYpX Y:slot ,X:port
(2) 名稱組成格式
en: Ethernet 有線局域網
wl: wlan 無線局域網
ww: wwan無線廣域網
名稱類型:
o<index>: 集成設備的設備索引號
s<slot>: 擴展槽的索引號
x<MAC>: 基于MAC地址的命名
p<bus>s<slot>: enp2s1
使用傳統命名方式:
(1) 編輯/etc/default/grub配置文件
GRUB_CMDLINE_LINUX=”rhgb quiet net.ifnames=0″或:修改/boot/grub2/grub.cfg
(2) 為grub2生成其配置文件
grub2-mkconfig -o /etc/grub2.cfg
(3) 重啟系統
NetworkManager圖像化網卡配置服務
nmcli:地址配置工具(RHCE重點)
nmcli connection show:查看網卡詳細配置列表
nmcli可配置bonding
teaming相當于bonding:網絡組,是將多個網卡聚合在一起方法,從而實現冗錯和提高吞吐量
使用nmcli配置網絡
顯示網絡接口屬性
nmcli dev show eth0
創建新連接default,IP自動通過dhcp獲取
nmcli con add con-name default type Ethernet ifname eth0
刪除連接
nmcli con del default
創建新連接static ,指定靜態IP,不自動連接
nmcti con add con-name static ifname eth0 autoconnect no typeEthernet ipv4.addresses 172.25.X.10/24 ipv4.gateway 172.25.X.254
啟用static連接配置
nmcli con up static
啟用default連接配置
nmcli con up default
查看幫助
nmcli con add help
nmcli相關命令
修改連接配置后,需要重新加載配置
nmcli con reload
nmcli con down “system eth0” 可被自動激活
nmcli con up “system eth0”
nmcli dev dis eth0 禁用網卡,訪止被自動激活
圖形工具
nm-connection-editor
字符工具
nmtui
nmtui-connect
nmtui-edit
nmtui-hostname
網絡組不同于舊版中bonding技術,提供更好的性能和擴展性
網絡組由內核驅動和teamd守護進程實現
多種方式runner
broadcast:相當于bonding的mode3廣播策略
roundrobin:相當于bondingmode0輪詢策略
activebackup相當于bonding的mode1主備策略
loadbalance:負載均衡策略
lacp (implements the 802.3ad Link Aggregation Control Protocol)
網絡組規則
啟動網絡組接口不會自動啟動網絡組中的port接口
啟動網絡組接口中的port接口總會自動啟動網絡組接口
禁用網絡組接口會自動禁用網絡組中的port接口
沒有port接口的網絡組接口可以啟動靜態IP連接
啟用DHCP連接時,沒有port接口的網絡組會等待port接口的加入
創建網絡組
nmcli con add type team con-name [team名] ifname [team名] config ‘{“runner”: {“name”: “模式”}}’
配置網絡組ip
nmcli con mod team0 ipv4.addresses 192.168.1.100/24 ipv4.method manual
添加網卡
nmcli con add type team-slave con-name 連接別名 ifname 網絡接口名 master 網絡組名
啟動網絡組
nmcli con up team0
nmcli con up team0-eth1
nmcli con up team0-eth2
teamdctl team0 state; nmcli dev dis eth1(eth1不連接)
刪除網絡組
nmcli connection down team0
teamdctl team0 state
nmcli connection show
nmcli connectioni delete team0-eth0
nmcli connectioni delete team0-eth1
nmcli connection show
網橋
橋接:把一臺機器上的若干個網絡接口“連接”起來。其結果是,其中一個網口收到的報文會被復制給其他網口并發送出去。以使得網口之間的報文能夠互相轉發。網橋就是這樣一個設備,它有若干個網口,并且這些網口是橋接起來的。與網橋相連的主機就能通過交換機的報文轉發而互相通信。
查看網橋
cat /etc/sysconfig/network-scripts/ifcfg-br0
cat /etc/sysconfig/network-scripts/ifcfg-br0-port0
brctl show
hostname顯示主機名
ping測試網絡連通性
mtr同上
ip route 顯示正確的路由表
wget [option]… [URL]…
-q: 靜默模式
-c: 斷點續傳
-P:保存在指定目錄
-O: 保存為指定的文件名
–limit-rate=: 指定傳輸速率,單位K,M等
links:字符界面訪問網頁
–dump:只看文字
–source:查看源代碼
本文來自投稿,不代表Linux運維部落立場,如若轉載,請注明出處:http://www.www58058.com/97429