Linux如何进行网络管理教程笔记

在前面的课程中我们分别讲解了Linux的安装、基础命令,以及使用辅助工具VI,进行软件安装等课程。电脑需要网络,Linux同样需要,如此才能在线进行控制、管理、更新。Linux网络管理教程从基础的网络、到配置、到控制命令、到远程登录逐渐由浅入深的讲解。

Linux网络管理
一、网络基础
⑴、iso/osi 七层模型
    ISO:国际标准化组织
    OSI:开放系统互联模型
    IOS:苹果操作系统;
         互联网操作系统,是思科公司为其网络设备开发的操作维护系统;
    ◆七层模型(只是模型,是基础可以加深后续知识理解)
    层次(层间接口)  主机A           协议             主机B    数据单位
    7                 应用层  ←  ← 应用层协议→ →    应用层    APDU
    6                 表示层  ←  ← 表示层协议→ →    表示层    PPDU
    5                 会话层  ←  ← 会话层协议→ →    会话层    SPDU
    4                 传输层  ←  ← 传输层协议→ →    传输层    TPDU
    3                 网络层  ←  ← 网络层协议→ →    网络层    报文
    2          数据链路层 ←← 数据链路层层协议→→  数据链路层层  帧
    1                 物理层  ←  ← 物理层协议→ →    物理层    比特
    注释:真正进行数据传递的是物理层,其他都是虚拟的,即整个过程是由主机A的应用层向下传到A的物理层,再传到B的物理层,再传到B的应用层;5、6、7三层是对用户提供服务,1、2、3、4层对实际数据服务;MAC(物理地址):8C-89-A5-08-D7-WS,帧里面保存的重要信息就含有这个物理地址,MAC地址负责局域网通讯,IP地址负责外网通信,IP地址是用报文传播,TPDU是传输协议数据单元;
    七层模型的具体作用
    ■、表示层:数据的表现形式(将机器语言转换)、特定功能的实现,如加密
    ■、会话层:对应用会话的管理、同步(自动判断用户产生的数据是保存还是发送)
    ■、传输层:可靠与不可靠的传输(有TCP(数据可靠面向连接的协议)、UDP(速度快,但可能会丢包)协议)、传输前的错误检测、流控(根据网速来自动控制发送数据的速度)(数据的接收依靠IP来实现传输,依靠应用服务使用的端口号来签收)
    ■、网络层:提供逻辑地址(写入自己和数据接收方的IP地址)、选路(自动选择数据传输路径)
    ■、数据链路层:成帧、用MAC地址访问媒介、错误检测与修正
    ■、物理层:设备之间的比特流的传输、物理接口、电气特性等决定物理层效果。
 
⑵、TCP/IP 四层模型
    TCP/IP 四层模型         对应           OSI 7层模型
    应用层                                 应用层
                                           表示层
                                           会话层
    传输层                                 传输层
    网际互联层                             网络层
    网络接口层                             数据链路层
                                           物理层
    ■、网络接口层:负责监视数据在主机和网络之间的交换。事实上,TCP/IP本身并未定义该层的协议,而由参与互连的各网络使用自己的物理层和数据链路层协议,然后与TCP/IP的网络接入层进行连接。地址解析协议(ARP)工作在此层,即OSI参考模型的数据链路层。Windows中CMD命令下输入:arp -a     就可以显示网关,MAC,IP(如果事前有PING通某一个IP,那么也会显示该IP 下的MAC)
    ■、网际互联层:解决主机到主机的通信问题。包含三个协议:网际协议(IP)、互联网组管理协议(IGMP)、互联网控制报文协议(ICMP:这个协议就是我们ping协议。可以通过ping 192.168.1.1来查看网络是否有问题)。
    ■、传输层:为应用层实体提供端到端的通信功能,保证了数据包的顺序传送及数据的完整性。该层定义了:传输控制协议(TCP)、用户数据报协议(UDP)
        TCP/IP 三次握手
                主机A              1            主机B
      发送SYN信息(序列号=x)→→→→→→接收SYN信息(序列号=x)
                                    2               ↓
接收SYN、ACK信息(序列号=y,确认号=x+1)  ←发送SYN、ACK信息(序列号=y,确认号=x+1)
                      ↓                3
          发送ACK信息(确认号=y+1)→→→→→→ 接收ACK消息(确认号=y+1)
          当传输的数据出现问题,主机B会反馈要求重传,保证信息准确可靠,因为AB一直都在交流中,所以传输的速度较慢。而UDP不管三七二十一,直接将数据扔过去。
         ■、应用层:为用户提供所需要的各种服务,例如FTP协议、Telnet、DNS、SMTP
两个模型的比较
    共同点:
    都采用了层次结构的概念;
    都能够提供面向连接和无连接两种通信服务机制;
    不同点:
    层次数量不同;
    对可靠性要求不同(TCP/IP要求更高);
    OSI在协议开发前设计,具有参考性;TCP/IP现有协议,再建立模型适合TCP网络
    TCP/IP模型已经已经成为实际上的国际标准应用,而OSI只是模型。
    
⑶、IP地址(范围0.0.0.0 — 255.255.255.255)(默认大小20字节)
    IP地址分类:公网IP要花钱的,内网私有IP自定义免费。
网络类别  最大网络数      IP范围           最大主机数        私有IP范围
A        126     1.0.0.0-126.255.255.255    2^24-2  10.0.0.0-10.255.255.255 
                 127.0.0.1 代表当前计算机自己
B        16384   128.0.0.0-191.255.255.255  2^16-2  172.16.0.0-172.31.255.255
C       2097152  192.0.0.0-223.255.255.255  2^8-2   192.168.0.0-192.168.255.255
D\E      不对民用组织开放
        注释:IP地址第一个数字区分A、B、C类网络范围,1.0.0.0代表网络本身,不能分配;1.255.255.255代表当前网络的广播地址,所以需要 - 2 
              A类用第一个数字区分不同的网段,不同网段需要路由器交换数据
              B类用前两个数字区分不同的网段,而同网段只需要交换机交换数据
              C类用前三个数字区分不同的网段,因此主机数量是2^递减的
         私有IP随意、重复使用,同一个内网內不得重复,缺点是不能访问公网,需转换
         
        子网掩码的使用
        标准子网掩码(下面地址均为举例,)
A类IP 10.1.1.20对应的子网掩码是 255.0.0.0  网络地址是第一个ip数字10.0.0.0
B类IP 172.16.1.2对应的子网掩码是 255.255.0.0 网络地址  172.16.0.0
C类IP 192.168.1.20对应子网掩码是 255.255.255.0  网络地址 192.168.1.0
    从上面可以看出IP地址的网段类型是由子网掩码决定的,比如3个255就是C类的。它的IP前三个数字相同就代表同一个网段。
    非标准子网掩码:当然上面B类的子网掩码也可以为3个255,这就是非标准子网掩码。因此非标准子网掩码就是255个数不对应网络类别。使用非标准子网掩码的后果是,网段类型随着子网掩码走,比如B类IP使用3个255,就代表前三个IP数字为同一字段。比如:IP地址:172.16.2.121  子网掩码:255.255.255.0  那么网络地址为:172.16.2.0
主机地址在范围 172.16.2.1-172.16.2.254   广播地址为:172.16.2.255
 
⑷、端口作用(TCP协议端口和UDP协议端口数量都是2^16共计65536个,从0端口开始至65535)(TCP协议包头默认大小20字节)
    ※端口号(用来发送或者接受数据的通道)
    ※端口号分类(TCP和UDP)
    ※常见端口号(不分TCP还是UDP)
    FTP(文件传输协议):端口号 20(数据传递)  21(登陆传输命令)
    SSH(安全shell协议):端口号 22
    telnet(远程登录协议):端口号 23   所有系统都禁止这个端口(明文传输)
    DNS(域名系统):端口号53
    http(超文本传输协议,阿帕奇服务):端口号 80
    SMTP(简单邮件传输协议):端口号25(发信)
    POP3(邮局协议3代):端口号110(收信)
    Mysql  3306
    查看本机启用的端口:Linux和Windows都能用的命令:netstat -an
                  选项:      -a   查看所有连接和监听端口
                              -n   显示IP地址和端口号,而不显示域名和服务名
⑸、DNS作用(域名解析Domain Name System)
    互联网中通过IP地址来通信,但是记忆起来太困难,人对域名更加敏感
    在Windows中的CMD中ping 域名,可以得到网站的IP地址。
    hosts文件:c:\windows\system32\drivers\etc\hosts
    127.0.0.1  localhost
    hosts是做静态IP和域名对应,hosts文件的优先级是高于DNS解析的。
    hosts文件解析域名效能低,主机维护困难。就需要DNS服务
    DNS服务的作用:将域名解析为IP地址,以下为过程
                   客户机向DNS本地域名服务器发送域名查询请求
                   DNS本地域名服务器向根DNS(.)服务器进行查询
                   根DNS将.com服务器地址返回DNS本地域名服务器
                   DNS本地域名服务器向.com服务器进行查询
                   .com服务器将 二级域名.com 返回DNS本地域名服务器
                   DNS本地域名服务器向  二级域名.com查询
                   二级域名.com  将结果返回DNS本地域名服务器
                   DNS服务器告知客户机WEB服务器的IP地址,并将结果保存3天
                   客户机与WEB服务器通信
    递归查询:客户机向DNS服务器查询,要么返回正确结果或错误结果
    迭代查询:DNS服务器向其他服务器查询,返回结果是最优的,不一定是直接答案
    正向查询:由域名查找IP      反向查询:由IP查找域名
 
    域名空间结构(. 表示根域名,根域名服务器只有13台)
    根域(保存顶级域的域名)
    顶级域 分为组织域(gov com edu net)、国家或地区域(cn jp uk hk)
    二级域  申请购买的网站域名名称
    主机名(三级域名)   www
    域名=三级域名+二级域名+一级域名   如:www.beiyun360.com
⑹、网关作用(用于不同网段访问,内外网IP互换)
    ◆、网关又称网间连接器、协议转换器。
    ◆、网关在网络层以上实现网络互连,是最复杂的网络互连设备,仅用于两个高层协议不同的网络互连。
    ◆、既可以用于广域网互连,也可以用于局域网互连。
    ◆、网关是一种充当转换重任的服务器或路由器,将内网IP和公网IP互转。
    注释:交换机只认识MAC,不认识IP,是一种二级网络设备;网关会有自己的下一级网关,局域网通信不需要网关和DNS;
二、Linux网络配置
⑴、Linux配置IP地址
    IP地址配置方法:
    ◆、ifconfig命令临时配置IP地址(很少用,只用来实验和测试)
        ifconfig命令:主要是查看网络状态,也可以配置
        Linux中使用ifconfig命令后显示eth0和lo,lo部分理解为网络协议正常;eth0代表第一块网卡,ethernet(以太网)、HWaddr(MAC)、inet addr(IP)、Bcast(广播地址)、Mask(子网掩码)、RX packets(接收到的数据包)、TX packets(发送的数据包)、Base address(网卡在内存中的地址)
        ifconfig eth0 192.168.0.200 netmask 255.255.255.0  #临时设置eth0网卡的IP地址与子网掩码(设置回车后远程管理工具会掉线,因为IP变了)
        注意:Windows中设置IP后点击确认并不代表IP设置生效,需要在CMD中查看ipconfig查看是否更改生效,查看所有ipconfig /all
    ◆、setup工具用久配置IP地址(类图形界面配置IP,工具属于redhat系列)
        输入命令:setup   进入配置界面
        使用DHCP 位置如果是*号,就代表自动获取;如果没有DHCP服务器就去掉*号手动输入,完成后用TAB键切换到确定、保存、保存并退出完成配置退出再执行重启网络服务即可,命令:service network restart  ;重启后远程工具会断开稍后恢复。如果没有生效,远程工具就会彻底断开。
⑵、Linux网络配置文件
    ◆、修改网络配置文件(没有setup就只能使用这个标准配置方式)
        配置文件主要有三部分
        ※、网卡信息文件(等号左侧是大写,右侧是小写,例子可按标准配置输入)
        [root@localhost ~]# vi /etc/sysconfig/network-scripts/ifcfg-eth0
        DEVICE = eth0               网卡设备名(必须和上面文件名匹配)
        BOOTPROTO = none            自动获取IP(none不、static、dhcp自动)
        HWADDR = 00:0c:29:17:c4:09  MAC地址
        NM_CONTROLLED = yes         是否由Network Manager图形管理工具托管
        ONBOOT = yes                是否随网络服务启动,默认no需改为yes
        TYPE = Ethernet             类型为以太网
        UUID = "44b748a-b59f-4..."   唯一识别码(克隆复制的多台计算机镜像每一台都需要改,否则全部都不能上网)
        IPADDR = 192.168.0.252      IP地址
        NETMASK = 255.255.255.0     子网掩码
        GATEWAY = 192.168.0.1       网关
        DNS = 202.106.0.20          DNS
        IPV6INIT = no               IPV6没有启用
        USERCTL = no                不允许非root用户控制此网卡
        ※、主机名文件
        [root@localhost ~]# vi/etc/sysconfig/network
        NETWORKING=yes
        HOSTNAME=localhost.localdomain
        [root@localhost ~]# hostname [主机名]      #查看与临时设置主机名命令
         主机名文件更改后,需要重启计算机才能生效。。。。
         所以可以临时更改主机名,命令: hostname [主机名]
                       查看主机名命令: hostname
         更改后 [root@localhost ~] 需要生效,只需要重新登陆
        ※、DNS配置文件(名称服务器)
        [root@localhost ~]# vi /etc/resolv.conf
        nameserver 202.106.0.20
        search localhost
    ◆、图形界面配置IP地址(一般不会安装图形界面,用的少)
    注释:在Windows中有人搭建了DHCP服务器,局域网內的IP地址就可以设置为自动,否则就需要手动设置;Windows中同一个局域网中IP、主机名均不能相同,而Linux中主机名就可以相同;
⑶、虚拟机网络参数配置(按下列步骤执行)
    ※、配置LinuxIP地址setup        注意:虚拟机IP和真实机IP不能冲突
    ※、启动网卡 在vi /etc/sysconfig/network-scripts/ifcfg-eth0 把ONBOOT=yes
        service network restart     #重启网络服务
    ※、修改UUID(没有克隆复制多台不需要更改)
        ◎、vi /etc/sysconfig/network-scripts/ifcfg-eth0    删除MAC地址行
        ◎、rm -rf /etc/udev/rules.d/70-persistent-net.rules
        删除网卡和MAC地址绑定文件
        ◎、重启Linux系统
    ※、设置虚拟机网络连接方式
        虚拟机→设置→网络适配器→网络连接选择桥接
    ※、修改桥接网卡
        编辑→虚拟网络编辑器→如果选桥接会自动选择网络→更改为我们选择的实际上网的无线网卡或者有线网卡→带有wireless的就是无线网卡→点击确定完成
三、Linux网络命令
⑴、网络环境查看命令
    ①、ifconfig              #查看与配置网络状态命令
    ②、ifdown [设备名]       #禁用该网卡设备     例如  ifdown eth0
        ifup [设备名]         #启用该网卡设备
    ③、netstat [选项]        #查询网络状态(Windows也常用) 
                -t            列出TCP协议端口
                -u            列出UDP协议端口
                -n            不使用域名与服务名,而使用IP地址和端口号
                -l            仅列出在监听状态网络服务
                -a            列出所有的网络连接
                -rn           列出路由列表,与route -n  命令一致
        netstat -tuln          netstat -an
        netstat -an | grep ESTABLINSHED | wc -l
    ④、route -n              #查看路由列表(可以看到网关)
        route add default gw 192.168.0.2      #临时设定网关,没有太大意义
        route del default gw 192.168.0.2      #删除临时网关
        注意:临时设定其他网关,可能导致不能上网,因为数据发送给这个临时网关转到公网时,它没有绑定下一个网关;而原有的网关的下一个网关在购买IP时,已经绑定过。在一台服务器里,连内网的网卡是不能设置网关的;
    ⑤、域名解析命令
        nslookup [主机名或IP]  #进行域名与IP地址解析
        nslookup
        >server              #再输入server,查看本机DNS服务器输入exit退出
⑵、网络测试命令
    ⑥、ping [选项] ip或者域名    #探测指定ip或域名的网络状况
              -c 次数              指定ping次数,没有添加的话用ctrl+c终止
    ⑦、telnet [域名或IP] [端口]  #远程管理(功能忽略)与端口探测命令
        telnet 192.168.0.252 80    不加端口号就是远程管理(前提是开启了远程管理服务,这个服务不安全,Linux和Windows都默认关闭这个服务了),加了端口号就是测试能否链接到这个端口,如果能能连证明开了端口(CMD中能连会没有任何反应,可以用ctr+]退出,并且使用quit退出telnet交互界面),不能连是端口关闭或者防火墙屏蔽
    ⑧、traceroute [选项] ip或域名  #路由跟踪命令(查找经过的访问路径)
                    -n               使用IP,不使用域名,速度更快
        traceroute 是利用ICMP(Internet控制报文协议)进行远程探测,如果禁止ping,就不能查看到路径,可以利用这点就行网络发生错误进行故障定位(首先将原来经常访问固定的路径记录下来,然后比较出问题时的路径区别)
    ⑨、wget 下载地址         #下载命令
    ⑩、tcpdump -i eth0 -nnX port 21   抓包命令(https是加密传输)
        -i                             指定网卡接口
        -nn                            将数据包中的域名与服务转为IP和端口
        -X                             以16进制和ASCLL码显示数据包内容
        port                           指定监听的端口
 
四、远程登录
⑴、SSH协议原理(又称安全外壳协议,是建立在分对称加密算法上)
    ◎对称加密算法:采用单钥密码系统的加密方法,同一个密钥可以同时用作信息的加密和解密,这种加密方法称为对称加密,也成为单密钥加密。
    ◎、非对称加密算法:又名公开密钥加密算法,有2个密钥:公开密钥,私有密钥。将A和B的公开密钥(相当于锁)共同加密一个文件,然后A和B可以分别用自己的密码和私有密钥解开同一份文件。
    SSH命令
    ssh 用户名@ip                               #远程管理指定Linux服务器
    scp [-r] 用户名@ip:文件路径 本地路径        #下载文件
    scp [-r] 本地文件 用户名@ip:上传路径       #上传文件
    注释:上传下载目录需要加-r,文件不需要,命令输入完成后需要输入密码才可。
    例如:ssh root@192.168.0.253         远程管理ip服务器
          yes                            下载对方的公钥
          ***                            输入密码
          exit                           退回本地服务器
    查看下载的公钥:  pwd
                      ls -a
                      cd .ssh/
                      ls
                      vi known_hosts
                      找到对应IP 后面是加密算法 最后一大部分都是公钥;如果原来的IP地址对应主机重装了系统或者IP被其他计算机抢占了,这时候就需要重新进入这个文件,删除这个IP对应的公钥(使用dd命令)后,重新链接这个IP下载新公钥即可。
⑵、SecureCRT远程管理工具(收费工具)(在Windows上面管理Linux服务器)
    新建登陆:点击新建图标 → 快速链接 → 输入IP →确认,等待登陆输入密码
    调整界面:options → session options → apperance → font → 调整中文字体 → 选择中文GB2312 → 字体大小 → 确定 → character encoding → UTF-8 → 完成
⑶、Xshell工具和WinSCP文件传输工具(免费的在Windows上面管理Linux服务器)
        下载一个Xshell工具→安装→free for home/school→简体中文→安装完成→打开→取个服务器名称→SSH→输入IP→点击用户身份验证→输入root→确认→连接→接受并保存公钥→输入密码→连接成功
        调整界面:配色方案→第二种,选择配置字体大小。选择UTF-8编码,其他详细的自己查看。
        winSCP工具下载安装→新建→SFTP→ip地址→用户名root→保存→点击登陆→下载公钥→输入密码→成功登陆→上传下载用鼠标左右拖动
请按F5,刷新后再评论
  • 全部评论(0
    还没有评论,快来抢沙发吧!