1. 程式人生 > >馬哥教育第20天至23天學習總結

馬哥教育第20天至23天學習總結

網絡原理

馬哥M28_20天
<font size=4>
1.ping -s 60000 目標主機ip地址 -f :指定發包大小60000ping
2.IP :由前網絡號部分和後主機號部分組成;
網絡號位數必須是連續性的二進制111111,不能是非連續性的;
網絡ID由IP二進制與子網掩碼二進制組合求解得到正確的網絡號
計算網絡數:2^可變的網絡ID
計算網絡的主機最大數量:2^主機ID位-2

                    0.0.0.0表示所有地址
                    cidr書寫方式:1.1.1.0/24   24表示網絡號位數
    A類地址:
                            前8位網絡ID,後24位為主機ID,網絡數126 (2^7-1)
                            0xxxxxxx.主機ID.主機ID.主機ID
                            網絡ID最大值01111111    127,但是127是回環地址,所以是126
                            A類地址的十進制範圍是1-126
                            主機數 2^24-2=16777214

    B類地址:
                                前16位網絡ID,後16位主機ID
                                10xxxxxx.xxxxxxxx.主機ID.主機ID
                                網絡ID最小值:10000000   128
                                網絡ID最大值:10111111   191
                                B類地址的十進制範圍是:128-191

        C類地址:
                                前24位網絡ID,後8位主機ID
                                110xxxxx.xxxxxxxx.xxxxxxxx.主機ID
                                網絡數:2^21
                                主機數:2^8-2=254
                                網路ID開頭範圍:192-223

        D類地址
                                多用於多播(組播)
                                1110xxxx.主機ID.主機ID.主機ID
                                網絡數16
                                主機數:2^24-2
                                網絡ID開頭取值範圍:224-239

        E類地址:
                                保留位,多用於實驗室
                                11110xxx.主機ID.主機ID.主機ID
                                網絡數:8
                                主機數:2^24-2
                                網絡ID開頭取值範圍:240-254

    私有IP地址
                                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

    練習1:
                IP地址:220.199.211.100
                子網掩碼:255.255.248.0

                a.用cidr表示法該如何表示
                      子網掩碼: 255.255.11111000.xxxxxxxx
                       IP地址:    220.199.11010011.xxxxxxxx
                             網絡號:  220.199.208.0/21

3.A:201.133.199.100/24
B:201.133.188.100/16

 A----->B    201.133.199.0     201.133.188.0
 B------>A   201.133.0.0         201.133.0.0
                a.201.133.199.100/24  -> 201.133.188.100/24  判斷不在一個網絡內
                b.A發送ARP廣播,問誰是201.133.199.99(網關IP),我是201.133.199.100,MAC是MACA
                c.網關回答A,我是201.133.199.99,我的MAC是Macrouter1
                d.IPA,IPB| Macrouter1  MACA
                e.route路由判斷,判斷出2口是去往201.133.188.100/16的網絡ID
                f.route發送ARP廣播,問誰是201.133.188.100(B的IP),我是201.133.188.99,MAC是Macrouter2
                g.B回應給router,我是201.133.188.100,我的MAC是macB
                h.route封包 IPA,IPB  |  MACB   MACROUTER2

子網劃分:
160.200.0.0/16
160.200.0 0000000.0/17
160.200.0.0/17 160.200.128.0/17
公式:
1.計算網絡數:2^可變的網絡ID
2.計算網絡中的主機最大數量:2^主機ID位-2
3.劃分子網的數量=2^網絡ID向主機ID借的位數
練習:160.200.0.0/16 將其劃分為16個子網
a.劃分子網的netmask
2^n=16, n=4 ,所以借位4,網絡位16+4=20位;
255.255.240.0
b.每個子網的主機數
2^(32-20)=4094
c.最小,最大的子網的網絡ID
160.200.0.0/20 160.200.240.0/20
d.最大子網的IP範圍
160.200.240.1/20 -- 160.200.240.254/20

e.對最大的子網再劃分32個仔仔網,還是以上4個要求:
160.200.240.0/20
e.1 劃分子網的netmask
2^n=32 , n=5
255.255.11111111.1 0000000
255.255.255.128
e.2 每個子網的主機數
2^7-2=126
e.3 最小,最大的子網的網絡ID
160.200.240.0/25 --- 160.200.255.128/25
e.4 最大的子網的IP範圍
160.200.255.129/25 160.200.255.254/25

小結:子網劃分:將一個大的網絡分割為多個小網絡,每個小網絡的主機ID變少,網絡ID變多,原來的大網絡的網絡ID向主機ID位借位;
超網劃分:將多個小網絡合並成一個大網絡,每個網絡的主機ID變多,網絡ID變少,原來的主機ID位向網絡ID位借位,其目的是節約路由器的記錄數

馬哥M28第二十二天、

路由表:由多條路由記錄組成(具有學習功能,每臺具有轉發功能的設備都可以做)
網關:目標網絡和當前路由器直連(同一網段或者不同網段網卡在同一設備上),網關IP=借口IP; 不直連時,網關IP=下一個路由器的臨近借口IP(同網段即同VLAN).

目標網絡ID netmask 接口 網關
192.168.1.3 255.255.255.0 eth3
主機路由 -host
192.168.1.0 255.255.255.0 eth0 192.168.1.254
網絡路由 -net
0.0.0.0 0.0.0.0 eth1 192.168.3.254
默認路由 route add default gw 0.0.0.0

dhcp
dhcp discover: 由客戶端發送廣播,請求ip地址
dhcp offer : 由dhcp服務器發送廣播,告知客戶端,我能提供IP地址
dhcp request:由客戶端再次發送廣播,告知全網絡我選擇了誰向我提供ip地址
ack:由指定的dhcp服務器向客戶端提供信息(ip,mask,gateway,release,dns)

網卡:
CentOS6中修改網卡名稱
1.vim /etc/udev/rules.d/70-persistent-net.rules
將其中對應要修改的網卡最後的NAME=""改為所需要的名稱
2.ethtool -i ethX 查看網卡對應的驅動模塊
3.modprobe -r e1000 卸載模塊
4.modprobe e1000 重新加載模塊
5.在/etc/sysconfig/network-scripts/ 將原網卡的配置文件改文件名,使其格式為ifcfg-網卡名
6.修改上述配置文件,將其中的DEVICE=改為網卡名
7.ifdown 網卡名
8.ifup 網卡名

ifconfig
ifconfig -a 顯示所有網卡信息,無論是否激活
ifconfig 網卡名 up/down 激活/禁用指定網卡

簡單配置路由:(將多條跳轉網關相同或者去向相同的路由條目進行default路由指定,即合並簡化路由表!)
PC1:6.6.6.6
PC2:8.8.8.8
ROUTE1:6.6.6.1 7.7.7.1
ROUTE2:7.7.7.2 8.8.8.2
4臺機器,按要求改好網卡名,配置好靜態IP,保證沒有網關.

1.vim /etc/sysctl.conf
net.ipv4.ip_forward=1 #開啟轉發功能
2.sysctl -p #立即生效轉發
3.PC1: route add default gw 6.6.6.1
4.ROUTE1: route add -net 8.8.8.0/24 gw 7.7.7.2
5.ROUTE2: route add -net 6.6.6.0/24 gw 7.7.7.1
6.PC2: route add default gw 8.8.8.2
7.iptables -F :目前先清防火墻,後面學習並使用防火墻策略詳細制定(實際生產環境不可能隨便執行清除、刪除操作)

追蹤路由信息:
traceroute ip
tracepath -n ip
mtr ip

修改主機名
CentOS6以及之前:
重啟後有效:vim /etc/sysconfig/network
當前有效:hostname xxxxx
CentOS7:
重啟後有效:vim /etc/hostname
當前有效:hostname xxxxxx
當前和重啟均有效:hostnamectl set-hostname xxxx.com
hostnamectl status 查看系統信息
修改工具:(centos6裏面建議手動關閉nm /etc/init.d/networkmanage stop)
CentOS6: system-config-network
CentOS7: nmtui

手動改網卡配置:
CentOS7:
nmcli device show eth0
nmcli connection modify eth0 ipv4.method manul ipv4.addresses 172.18.253.215/24 ipv4.gateway 172.18.0.1 ipv4.dns 114.114.114.114
nmcli connection up eth0
nmcli connection show eth0

馬哥M28第二十三天、

netstat
-t 顯示tcp
-u 顯示udp
-w 顯示socket( s開頭文件為套接字文件,可通信共享信息)
-n以數字方式顯示IP以及端口,不再通過DNS反解
-l 顯示監聽 listen
-a 顯示所有狀態
-e 顯示擴展
-r 顯示路由表
-p 顯示進程PID以及進程名
-i 顯示所有網絡接口的信息
-Iinterface 選項I直接跟網卡名,顯示指定網絡接口的信息
等同於ifconfig -s interface

ss
-t 顯示tcp
-u 顯示udp
-w 顯示socket
-n 以數字方式顯示IP以及端口,不再通過DNS反解
-l 顯示監聽,默認顯示tcp
-a 顯示所有狀態
-e 顯示擴展
-p 顯示進程pid以及進程名
-tulnpa
-tan -anu

ip
ip link (ip l 簡寫)
ip link show [interface] 顯示鏈路層信息
鏈路層激活網卡
ip link set ethX up 或 ifconfig eth2 up
鏈路層禁用網卡
ip link set ethX down 或 ifconfig eth2 down

            ip  addr (ip  a  簡寫)
                            ip  addr  show  [interface]
                            ip  addr  add 1.1.1.1/24  dev eth0
                            ip  addr  add  2.2.2.2/24 dev eth0 scope host /link/global
                            ip  addr  add  3.3.3.3/24 dev eth0 label  eth0:lan1

                            ip  addr  del  1.1.1.1/24  dev eth0
                            ip  addr  flush  dev eth0

             ip  route 
                             ip route add 192.168.153.200  via 192.168.153.128(網關)
                             ip route add 8.8.8.0/24 via 192.168.153.128
                             ip route add default via 192.168.153.128
                             ip route del  default
                             ip r d 192.168.153.200(刪除路由簡寫)
                             ip r  d  default
                             ip r  f  dev eth0  清除關於eth0的所有路由

網絡配置文件
dns : domain name servier
Linux/unix : /etc/hosts
默認情況hosts優先於DNS,決定順序是/etc/nsswitch.conf
. 跟域名; .com. 二級域名; www.badu.com 三級域名

    www.baidu.com
    /etc/resolv.conf    -->nameserver  8.8.8.8
    正向解析
    nslookup   www.baidu.com
    dig -t A www.baidu.com
    host -t A www.baidu.com
    反向解析
    dig  -x  1.1.1.1

Bonding:(多塊網卡綁定在一個邏輯接口)

cd /etc/sysconfig/network-scripts/
1.vim ifcfg-bond0
DEVICE=bond0
BONDING_OPTS="mode=1 miimon=100"
IPADDR=192.168.25.100
PREFIX=24

2.vim ifcfg-eth3
DEVICE=eth0
MASTER=bond0
SLAVE=yes

3.vim ifcfg-eth4
                DEVICE=eth4
                MASTER=bond0
                SLAVE=yes

/etc/init.d/network restart
cat /proc/net/bonding/bond0 #查看bond0狀態
cat /sys/class/net/bond0/bonding/mode #查看bond0模式

CentOS7當中網卡配置:nmcli
nmcli -- 一塊網卡可以有多個配置文件(connection.id)
nmcli device show eth0 查看網卡設備信息
nmcli device status
nmcli connection 查看所有配置文件信息
nmcli connection modify eth0 connection.id config-eth0-1
nmcli connection show config-eth0-1 查看指定網卡配置文件"config-eth0-1"的信息
nmcli connection add con-name config-eth0-2 #默認新建的配置文件,ipv4.method 為dhcp
nmcli connection up config-eth0-2 #激活
nmcli connection down config-eth0-2 #關閉
nmcli connection modify config-eth0-2 connection.autoconnect yes
nmcli connetction modify config-eth0-2 ipv4.method manual ipv4.addresses 1.1.1.1/24 [ipv4.gateway 1.1.1.254 ipv4.dns 114.114.114.114]
nmcli connection modify config-eth0-2 +ipv4.address 2.2.2.2/24
#使用加號,可以讓一個配置文件具有多個ip(網卡可具備多個ip)

  1. nmcli connection del config-eth0-2</font>

馬哥教育第20天至23天學習總結