主要內容:
ip地址以及子網劃分
路由基本概念
網絡配置工具:ifconfig,ip,netstat使用
網卡配置文件及修改
IP地址:
它們可唯一標識 IP 網絡中的每臺設備 v
每臺主機(計算機、網絡設備、外圍設備)必須具有唯 一的地址 v
IP地址由兩部分組成:
網絡ID: 標識網絡,每個網段分配一個網絡ID
主機 ID:標識單個主機由組織分配給各設備
A類地址:
以0開頭,子網掩碼/8 也可表示為255.0.0.0
所以網絡數為:2^(8-1) 因為第一位被0占用了
網絡中主機數為:2^24-2
私網地址為:10.0.0.0
B類地址:
以10開頭,子網掩碼為/16 即255.255.0.0
網絡數為:2^(16-2) 前2位被占用了
網絡中的主機數為:2^16-2
私網地址為:172.16.0.0-172.31.0.0
C類地址:
以110開頭,子網掩碼為/24 即255.255.255.0
網絡數為:2^(24-3) 前3位被占了
網絡中的主機數為:2^8-2
私網地址:192.168.0.0-192.168.255.0
D類地址:組播
以1110開頭,從224-239
ip地址子網劃分步驟:例如劃分100.123.211.22/16劃出8個子網。
1 先用ip地址與子網掩碼進行與運算
01100100 01111011 00000000 00000000
11111111 1111 1111 00000000 00000000
2 再根據要求,劃分8個子網即2^3,所以向主機位借3位。
0110 0100 0111 1011 000 00000 00000000
3 寫出子網
0110 0100 0111 1011 001 00000 00000000
0110 0100 0111 1011 010 00000 00000000
0110 0100 0111 1011 011 00000 00000000
0110 0100 0111 1011 100 00000 00000000
0110 0100 0111 1011 101 00000 00000000
0110 0100 0111 1011 110 00000 00000000
0110 0100 0111 1011 111 00000 00000000
0110 0100 0111 1011 000 00000 00000000
轉換成10進制為:
100.123.0.0 100.123.32.0 100.123.64.0 100.123.96.0 100.123.128.0
100.123.160.0 100.123.192.0 100.123.224.0
路由的幾個基本概念:
動態路由:路由選擇器自動共享路由信息,根據路由協議自動構建路由表
靜態路由:手動構建路由表
直接路由:發往直接路由的設備不僅包含目的ip地址信息,還包含目的路由設備的mac地址
間接路由:發往路由設備的信息中包含最終的ip地址信息,同時包含下一個網關的mac地址
主機路由/網絡路由:兩者根據目的地址完整度區分,主機路由的目的地址包含的是完整的主機地址信息,網絡路由目的地址包含的是網絡地址,主機部分為0。
簡單網絡配置:
主機名:
查看主機名:hostname;cat /etc/hostname
修改:vim /etc/hostname
hostnamectl set-hostname xxx
ifcfg系列:ifconfig netstat route
ifconfig: 顯示網卡信息
用法 ifconfig [device]
ifconfig interface [aftype] options | address …
顯示網卡信息
-a:查看所有網卡信息
ifconfig 網卡名 up|down 開啟|關閉網卡
ifconfig eth0 10.1.110.110/16 up
ifconfig eth0 10.1.111.111 netmask 255.255.0.0
注意:修改網卡的ip地址會立即生效,但是重啟后會失效
route命令:路由管理命令
查看路由:route -n
添加 route add
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 v
刪除:route del
route del [-net|-host] target [gw Gw] [netmask Nm] [[dev] If] v
目標:192.168.1.3 網關:172.16.0.1
# route del -host 192.168.1.3 v
目標:192.168.0.0
網關:172.16.0.1
# route del -net 192.168.0.0 netmask 255.255.255.0
注意:添加的網關必須能夠ping通,而且添加的ip也必須是可以ping通的
刪除:route del route del [-net|-host] target [gw Gw] [netmask Nm] [[dev] If] v
目標:192.168.1.3
網關:172.16.0.1
# route del -host 192.168.1.3 v
目標:192.168.0.0
網關:172.16.0.1
# route del -net 192.168.0.0 netmask 255.255.255.0
netstat:
-t: tcp協議相關
-u: udp協議相關
-w: raw socket相關
-l: 處于監聽狀態
-a: 所有狀態
-n: 以數字顯示IP和端口;
-e:擴展格式
-p: 顯示相關進程及PID
顯示路由表:
netstat -r:顯示內核路由表
顯示接口統計數據:
netstat {–interfaces|-I|-i} [iface] [–all|-a] [-extend|-e] [–program|-p] [–numeric|-n]
# netstat -i 顯示網卡統計信息
# netstat –I=IFACE 顯示某塊網卡統計信息
# ifconfig -s eno16777736
ip命令:配置linux網絡屬性
參數:
option :設定的參數,主要有:
-s :顯示出該設備的統計數據(statistics),例如總接受封包數等;
作用對象:就是是可以針對哪些網絡參數進行動作,包括有:
link :關于設備 (device) 的相關設定,包括 MTU, MAC 地址等等
addr/address :關于額外的 IP 設定,例如多 IP 的實現等等;
route :與路由有關的相關設定
ip link :與數據鏈路層有關
ip link 可以設定與設備 (device) 有關的相關設定,包括 MTU 以及該網絡設備的 MAC 等等, 當然也可以啟動 (up) 或關閉 (down) 某個網絡設備。整個語法是這樣的:
[root@linux ~]# ip [-s] link show <== 單純的查閱該設備相關的信息
[root@linux ~]# ip link set [device] [動作與參數]
參數:
show:僅顯示出這個設備的相關內容,如果加上 -s 會顯示更多統計數據;
set :可以開始設定項目, device 指的是 eth0, eth1 等等設備代號;
動作與參數:包括以下動作:
up|down:啟動 (up) 或關閉 (down) 某個設備,其他參數使用預設的以太網參數;
address:如果這個設備可以更改 MAC ,用這個參數修改;
name:給予這個設備一個特殊的名字;
mtu:設置最大傳輸單元。
顯示設備信息:
ip link show
ip -s link show eth0
啟動或者關閉設備:
[root@linux ~]# ip link set eth0 up
# 啟動eth0這個設備;
[root@linux ~]# ip link set eth0 down
# 關閉eth0這個設備;
[root@linux ~]# ip link set eth0 mtu 1000
更新網卡的 MTU 使用 ifconfig 也可以實現。如果是要更改『網卡代號、 MAC 地址的信息』的話,那可就得使用 ip了,設定前需要先關閉該網卡,否則會不成功。
[root@linux ~]# ip link set eth0 down <==關閉設備
[root@linux ~]# ip link set eth0 name vbird <==重新設定
[root@linux ~]# ip link show <==查看信息
ip addr:與網絡層有關,設定與ip有關的各項參數
ip addr show:查看ip信息 等價于ip addr
ip address [add|del] [IP參數] [dev 設備名] [相關參數]
參數:
show :單純的顯示出設備的 IP 信息;
add|del :進行相關參數的增加 (add) 或刪除 (del) 設定,主要有:
IP 參數 :主要就是網域的設定,例如 192.168.100.100/24 之類的設定;
dev :這個 IP 參數所要設定的設備,例如 eth0, eth1 等等;
相關參數:如下所示:
broadcast:設定廣播位址,如果設定值是 + 表示讓系統自動計算;
label :該設備的別名,例如eth0:0;
scope :這個設備的領域,通常是以下幾個大類:
global :允許來自所有來源的連線;
site :僅支持IPv6 ,僅允許本主機的連接;
link :僅允許本設備自我連接;
host :僅允許本主機內部的連接;
所以當然是使用 global 了。預設也是 global。
通過ip addr add 配合label使用可以模擬多塊網卡
ip route:關于路由的設定,與route用法相似
[root@linux ~]# ip route show <==單純的顯示出路由的設定
[root@linux ~]# ip route [add|del] [IP或網域] [via gateway] [dev 設備]
參數:
show :單純的顯示出路由表,也可以使用 list ;
add|del :增加 (add) 或刪除 (del) 路由;
IP或網域:可使用 192.168.50.0/24 之類的網域或者是單純的 IP ;
via :從那個 gateway 出去,不一定需要;
dev :由那個設備連出去,需要;
mtu :可以額外的設定 MTU 的數值;
網絡配置文件:
IP、MASK、GW、DNS相關配置文件:
/etc/sysconfig/network-scripts/ifcfg-IFACE v
路由相關的配置文件:
/etc/sysconfig/network-scripts/route-IFACE v/etc/sysconfig/network-scripts/ifcfg-IFACE
配置文件詳解:
DEVICE:此配置文件應用到的設備
HWADDR:對應的設備的MAC地址
BOOTPROTO:激活此設備時使用的地址配置協議,常用的dhcp, static, none, bootp
NM_CONTROLLED:NM是NetworkManager的簡寫, 此網卡是否接受NM控制;建議CentOS6為“no”
ONBOOT:在系統引導時是否激活此設備 v
TYPE:接口類型;常見有的Ethernet, Bridge v
UUID:設備的惟一標識 v
IPADDR:指明IP地址 v
NETMASK:子網掩碼 v
GATEWAY: 默認網關 v
DNS1:第一個DNS服務器指向 v
DNS2:第二個DNS服務器指向 v
USERCTL:普通用戶是否可控制此設備 v
PEERDNS:如果BOOTPROTO的值為“dhcp”,是否允許 dhcp server分配的dns服務器指向信息直接覆蓋至 /etc/resolv.conf文件中
配置文件修改后,需要systemctl restart network———-
每三行定義一條路由
ADDRESS#=TARGET
NETMASK#=mask
GATEWAY#=GW
Bond配置:
1創建bond0配置文件
vim ifcfg-bond0
DEVICE=bond0
BOOTPROTO=none
IPADDR=10.1.100.100
PREFIX=16
BONGDING_OPTS=”miimon=100 mode=1”
2創建幾塊網卡配置文件
vim ifcfg-eth0
DEVICE=eth0
MASTER=bond0
SLAVE=yes
systemctl restart network
ifconfig查看
cat /proc/net/bonding/bond0 查看bond狀態
刪除bond0
ifconfig bond0 down
rmmod bonding
lsmod|grep bonding查看綁定模塊
nmcli用法:
nmcli [ OPTIONS ] OBJECT { COMMAND | help }
device – show and manage network interfaces
nmcli device help
connection – start, stop, and manage network connections
nmcli connection help v
修改IP地址等屬性:
#nmcli connection modify IFACE [+|-]setting.property value
setting.property:
ipv4.addresses ipv4.gateway
ipv4.dns1 ipv4.method manual | dhcp v
修改配置文件執行生效:
systemctl restart network
nmcli con reload v
nmcli命令生效: nmcli con down eth0 ;nmcli con up eth0
原創文章,作者:liuzhuo,如若轉載,請注明出處:http://www.www58058.com/44091