linux网络管理

网络基础

ISO/OSI七层模型

TCP/IP四层模型 是在 ISO/OSI七层模型 演变而来的

层级 作用
用户层 用户接口
表示层 数据的表现形式、特定功能的实现如-加密
会话层 对应用会话的管理、同步
传输层 可靠(tcp)与不可靠(udp)传输、传输前的错误检测、流控
网络层 提供逻辑地址(IP)、选路
数据链路层 成帧、用MAC地址访问媒介、错误检测与修正
物理层 设备之间的比特流的传输、物理接口、电气特性等

TCP/IP四层模型

网络接口层:负责监视数据在主机和网络之间的交换。事实上,TCP/IP本身并未定义该层的协议,而由参与互连的各网络使用自己的物理层和数据链路层协议,然后与TCP/IP的网络接入层进行连接。地址解析协议(ARP) 工作中此层,即OSI参考模型的数据链路径层。

Internet层:主要解决主机到主机的通信问题。它所包含的协议设计数据包在整个网络上的逻辑传输。该层有三个主要协议:网际协议(IP)互联网组管理协议(IGMP)互联网控制报文协议(ICMP)

传输层:为应用层实体提供端到端的通信功能,保证了数据包的顺序传送及数据的完整性。该层定义了两个主要的协议:传输控制协议(TCP)用户数据报协议(UDP)
TCP为可靠的协议,需要三次握手
UDP为不可靠协议,不需要握手,直接发送数据,更加快速

数据封装过程

数据接收过程

TCP/IP模型与OSI模型的比较
共同点: 都采用了层次结构,都能够提供面向连接和无连接两种通信服务机制
不同点:

  1. OSI是七层,TCP/IP四层
  2. 对可靠性要求不同(TCP/IP模型更高)
  3. OSI模型是在协议开发前设计的,具有通用性。TCP/IP是先有协议集然后建立模型,不适用于非TCP/IP网络
  4. 实际市场应用不同,OSI模型只是理论上的模型,并没有成熟的产品,而TCP/IP已经成为 实际上的国际标准

IP地址

IP包头

IP地址分类

子网掩码

端口作用

TCP包头

UDP包头

常见端口号
FTP(文件传输协议): 20(数据传递)、21(登录及命令传输)
SSH(安全shell协议): 22
telnet(远程登录协议): 23(默认禁止,明文传输)
DNS(域名系统): 53
http(超文本传输协议): 80
SMTP(简单邮件传输协议): 25(发信)
POP3(邮局协议3代): 110(收信)

查看本机启用的端口 linux与window都可使用
netstat -an
a: 查看所有连接和监听端口
n: 显示IP地址和端口号,而不显示域名和服务名

DNS作用

DNS: (Domain Name System)域名系统

在互联网中,通过IP地址来进行通信,但IP地址用数字表示,记忆起来太困难。
人对域名更加敏感,如 http://baidu.com

hosts文件 做静态IP和域名对应
C:WindowsSystem32driversetchosts
hosts文件的优先级是高于DNS解析的
早期Hosts文件解析域名: 名称解析效能下降,主机维护困难
DNS服务: 层次性,分布式

DNS服务作用 将域名解析为IP地址
客户机向DNS服务器发送域名查询请求
DNS服务器告知客户机Web服务器的IP地址
客户机与Web服务器通信

DNS查询过程

DNS查询类型
递归查询:要么做出查询成功响应,要么作出查询失败的响应。一般客户机和服务器之间属递归查询,即当客户机向DNS服务器发出请求后,若DNS服务器本身不能解析,则会向另外的DNS服务器发出查询请求,得到结果后转交给客户机
迭代查询:服务器收到一次迭代查询回复一次结果,这个结果不一定是目标IP与域名的映射关系,也可以是其它DNS服务器的地址

网关作用

网关(Gateway) 又称网间连接器、协议转换器。
网关在网络层以上实现网络互连,是最复杂的网络互连设备,仅用于两个高层协议不同的网络互连。
网关即可以用于广域网互连,也可以用于局域网互连。
网关是一种充当转换重任的服务器或路由器。

linux网络配置

Linux配置IP地址

ifconfig命令临时配置IP地址
ifconfig 查看与配置网络状态命令
ifconfig eno16777736 192.168.0.200 netmask 255.255.255.0 临时设置eno16777736网卡的IP地址与子网掩码
在实际工作中,很少会使用这各命令来配置IP地址

setup工具永久配置IP地址 (redhat专用,最小化安装时没有这个工具)
setup
service network restart

修改网张配置文件 标准配置方式
网卡信息文件: /etc/sysconfig/network-scripts/ifcfg-eno16777736

[root@centos7 ~]# vi /etc/sysconfig/network-scripts/ifcfg-eth0
DEVICE="eth0"   网卡设备名
BOOTPROTO="none"    是否自动获取IP(none, static, dhcp)
HWADDR="00:0C:29:1B:F6:A1"  MAC地址
IPV6INIT="no"  IPV6未启用
NM_CONTROLLED="yes"     是否可以由Network Mannger图形管理工具托管
ONBOOT="yes"    是否随网络服务启动,eth0生效
TYPE="Ethernet"     类型为以太网
UUID="3c0cd457-326d-498b-a244-fd3fffae9108"     唯一识别码
IPADDR=192.168.1.103    IP地址
NETMASK=255.255.255.0   子网掩码
GATEWAY=192.168.1.1     网关
DNS1=202.106.0.20       DNS
USERCTL=no          不允许非root用户控制此网卡

主机名文件: /etc/sysconfig/network

cat /etc/sysconfig/network
[chencye@localhost ~]$ cat /etc/sysconfig/network
NETWORKING=yes
HOSTNAME=localhost.localdomain

hostname [主机名] 查看与临时设置主机名
hostname -I 查看IP

DNS配置文件: /etc/resolv.conf

[chencye@localhost ~]$ cat /etc/resolv.conf
# Generated by NetworkManager
nameserver 101.47.94.12
nameserver 211.162.61.225

虚拟机网络配置

# 修改并配置IP地址
setup
# 启动网卡,把NOBOOT=no改为NOBOOT=yes
vi /etc/sysconfig/network-scripts/ifcfg-eth0
# 重启网络服务
service network restart
# 查看网络配置
ifconfig

# 修改UUID,如果为手动安装,则不需要修改;如果是克隆的,则需要修改
# 1) 删除MAC地址行
vi /etc/sysconfig/network-scripts/ifcfg-eth0
# 2) 删除网卡和MAC地址绑定文件
rm -rf /etc/udev/rules.d/70-persistent-net.rules
# 3) 重启系统
shutdown -r

# 设置VM虚拟机网络连接方式
# 1) 桥接模式:使用真实网卡,配置简单(方便做实验),但需要占用真实网段中的IP地址
# 2) NAT模式:只能与本机进行通信,不能与局域网机器通信,可以利用真实网卡上网,使用VMware Network Adapter VMnet8
# 3) 仅主机模式:只能与本机通信,不能与局域网或公网机器通信,使用VMware Network Adapter VMnet1

# 修改桥接网卡
# VMware Workstation --> 编辑 --> 虚拟机网络编辑器

linux网络命令

网络环境查看命令

ifconfig 查看与临时配置网络 查看IP地址和子网掩码
ifup [网卡设备名] 启用该网卡
ifdown [网卡设备名] 停用该网卡

netstat 选项 查询网络状态
-t: 列出TCP协议端口
-u: 列出UDP协议端口
-n: 不使用域名与服务名,而使用IP地址和端口号
-l: 仅列出监听状态网络服务
-a: 列出所有的网络连接

netstat -rn 列出路由列表,与route命令使用一样

route -n 查看路由列表,可以看到网关
route add default gw 192.168.0.2 临时添加网关,一般不需要
route del default gw 192.168.0.2 删除网关
在一台服务器里,连内网的网卡是不能设置网关的

nslookup [域名] 翻译对应域名的IP,可以看到本地DNS
nslookup 直接回车后,输入server,可直接查看到本机DNS

网络测试命令

ping [选项] IP或域名 探测指定IP或域名的网络状况
-c: 指定ping包的次数

telnet [域名或IP] [端口] (需要安装)远程管理与 端口探测 命令,明文传输

traceroute baidu.com 路由跟踪,使用的是ICMP(Internet Control Message Protocol)Internet控制报文协议
禁止ping时,显示为***

wget 网络文件地址 下载命令(最小化安装时,没有这个命令)

tcpdump -i eth0 -nnx port 21 针对21端口进行抓包 (最小化安装时,没有这个命令)
-i: 指定网卡接口
-nn: 将数据包中的域名与服务转为IP和端口
-X: 以十六进制和ASCII码显示数据包内容
port: 指定监听的端口

远程登录工具

SSH协议原理

对称加密算法:采用单钥密码系统的加密方法,同一个密钥可以同时用作信息的加密和解密,这种加密方法称为对称加密,也称为单密钥加密。
非对称加密算法:(asymmetric cryptographic algorithm) 又名“公开密钥加密算法”,需要两个密钥:公开密钥(publickey)和私有密钥(privatekey)。羽毛球桶两边公钥

ssh密钥登录及远程执行命令

ssh 用户名@IP 首次访问会先加载公钥,如果一直连接不成功,可以查看公钥是否正确(~/.ssh/known_hosts)
scp [-r] 用户名@IP:路径 本地路径 下载文件
scp [-r] 本地路径 用户名@IP:上传路径 上传文件

工具

SecureSRT收费
Xshell对个人、教育用户是免费,XShell在商业环境使用下是需要买许可的
WinSCP文件传输工具

原文地址:https://www.cnblogs.com/chencye/p/6200519.html