-
Linux网络属性配置
- IP(Internet protocol)地址: 网络号+主机号
- IPv4:32bits
- 8bits 8bits 8bits 8bits
- 0-255
- 0.0.0.0-255.255.255
-
IP地址分类:
- A类:
- 第一段为网络号,后三段为主机号
- 网络号
- 0固定 000 0000-0 111 1111 :
- 网络数量: 1-127
- 每个网络中的主机数量:2^24 -2 (全0,全1)
- 主机全0表示网络本身地址, 全1表示所有主机广播地址地址
- 默认子网掩码:255.0.0.0
- 与IP地址按位进行"与"运算,从而取出其网络地址;
- 1.4.2.1/255.0.0.0=1.0.0.0
- 1.4.2.1/255.255.0.0=1.4.0.0
- 私有网络地址:10.0.0.0/255.0.0.0
- B类:
- 前两段为网络号, 后两段为主机号
- 网络号:
- 10 00 0000 -10 11 1111 :128-191
- 网络数: 2^14
- 每个网络的主机数量:2^16-2
- 默认子网掩码: 255.255.0.0
- 私有网地址: 172.16.0.0-172.31.0.0 (16)
- C类
- 前三段为网络号,最后一段为主机号
- 网络号:
- 110 00000 -110 11111 :192-223
- 网络数:2^21
- 每个网络中的主机数量: 2^8-2
- 默认子网掩码: 255.255.255.0
- D类:组播
- 1110 0000 -1110 1111 :224-255
- IPv6:128bits
-
路由器: router
- 把一个数据包从一个设备发送到不同网络里的另一个设备上去.这些工作依靠路由器来完成.路由器只关心网络的状态和决定网络中的最佳路径,路由的实现依靠路由器中的路由表来完成.
- 路由表生成:
- 静态指定
- 动态学习: rip2,ospf 协议
- 目标地址:下一跳(nexthop)
- 目标地址的类别:
- 主机:主机路由
- 网络 :网络路由
- 0.0.0.0/0.0.0.0默认路由
- 通信时,进程的数字标识
- 16bits:
- 0-65535:1-65535
- 1-1023:固定分配,而且只有管理员有权限启用;
- 1024-4w:半固定
- 4w+:临时;
- 每个端口只能一次运行一个进程
- IP地址用来标识源主机和目标主机及过程
- MAC:本地通信 :范围: 本地局域网 任何互联网通信都要转为本地
- IP :界定通信主机, 源和目标, 范围:互联网
- Port :界定进程 ;范围;主机
- 网络配置:
- 将Linux主机介入到网络中;需要配置网络相关设置.
- 主机名
- IP/NETMASK:本地通信
- 路由(网关):默认网关
- DNS服务器地址:基于主机名的通信
- 主DNS服务其地址
- 备用DNS服务器地址
- 第三备份DNS服务其地址
- 配置方式:
- 静态指定:
- 命令:
- ifcfg
- ifconfig:配置IP, NERMASK
- route:路由
- netstat: 状态及统计数据查看
- 配置文件
- iproute2:
- ip OBjECT:
- addr:地址和掩码;
- link:接口
- route:路由
- conrtos7:nm (NetworkManager)
- nmcli:命令行工具
- nmtul:text window 工具
- 动态分配: 依赖与本地网络中有DHCP服务
- DHCP:Dyanmlc Host Configure Procotol
- 网络接口的命令方式
- 传统命名
- 以太网: eth[0-n] ,例如: eth0.eth1...
- ppp网络:pppx [0,....] 例如 ,ppp0,ppp1...
- 可预测命名方案(contos):
- 支持多种不同命名机制:
- Fireware, 拓扑结构
- 1 . 如果Firmware或BIOS为主板上集成的设备提供的索引信息可用,则根据次索引进行命名,如eno1,2....
- 2 . 如果Firmware或BIOS为PCI-E扩展槽所提供的索引信息可用,且可预测,则根据次索引进行命名,如 ens1,2..
- 3 . 如果硬件接口的物理位置信息可用 , 则根据此信息命名,如 enp2s0....
- 4 如果用户显示定义,也可根据MAC地址命名,例如enx122161吧e10....
- 上述均不可用,仍使用传统方式命名;
-
Linux网络配置
- ifconfig:
- ifconfig interface
- ifconfig-a :显示所有接口,包括inative状态的接口口;
- 命令指定:
- ifconfig eth1 IP /24 up 添加
- ifconfig eth1 -ptomisc 移除
- options:
- - promisc
- 立即生效
- 管理IPV6地址
- ip add addr/prefixien 添加
- ip del addr/prefixien 删除
-
route:路由查看及管理
- 主机路由:目标地址为单个IP
- 网络路由 : 目标地址为IP网络
- 默认路由 : 目标为任意主机, 0.0.0.0/0.0.0.0
- 查看:
- route -n
- 添加:
- route add [-net|host] target [netmask Nm][ gw GW] [dev]lf
- route add -net 10.0.0.0/8 gw 192.168.10.1 dev eth1
- route add -net 0.0.0.0/0.0.0.0 gw 192.168.10.1
- route add default gw 192.168.10.1
- 删除
- route del -net 10.0.0.0/8 gw 192.168.10.1
- route del default 删除默认网关
-
netsat :
- 显示路由:netstat -r
- -r :显示内核路由表
- -n:数字格式
- 显示网络连接:
- netstat
- -t :TCP协议的相关连接,连接均有状态;FSM
- -u: UDP相关的连接
- -w:raw socker 相关链接
- -a 所有状态
- -n: 以数字格式显示IP和Port;
- -e:扩展格式
- -p:显示相关的进程及PID
- 常用组合
- -tan -uan -tnl -tual
- 传输层协议:
- tcp :面向连接的协议:通信开始之前,要建立虚链路;通信完成后还要拆除连接;
- udp: 无连接的协议;直接发送数据报文;
- 显示接口的统计数据:
- netstat
- 所有接口
- netstat -i
- 指定接口:
- netstat -Ieth1(无空格)
- ifup,ifdow:
- 通过配置文件/etc/sysconfig/network-scripts/ifcfg-xxx来识别接口并完成配置
-
配置主机名
- hostname:
- 查看:hostanme
- 配置:hostname HOSTNAME
- 仅当前有效
- hostnamectl
- hostnamectl status :显示当前主机名信息
- hostnamectl set-hostname:设定主机名.永久有效;
- 配置文件: /etc/sysconfig/network
- DNS服务器指向
- 配置文件:/etc/resolv.conf
- 如何测试/etc/hostsnslookup/dig
- dig -t A FQDN
-
iproute
-
管理IP地址
- 添加ip
- ip addr add IFADDR dev IFCE
- ip addr add 192.168.1.1/24 dev eth0
- label NAME:为额外的添加地址指明标签
- ip addr 10.1.1.10/8 dev eth0 label eth0:1
- broadcast ADDRESS : 广播地址;会根据IP和NETMASK自动计算得到;
- global:全局可用
- link :接口可用
- host :仅本机可用
- ip addr list :显示指定接口地址
- 添加路由
- ip route add TYPE PREFIX via GW dev IFACE src SOURCE_IP
- ip route add 192.168.0.0/24 via 10.0.0.1 dev eth1 src 10.0.20.100
- ip route add default
- 删除
- ip route del TYPE PREFIX
- ip route del 192.168.0.0/24
- ip route list 列出路由表
- ip route flush 192/24 清空指定路由
- 默认网关对未知的的接口都走2接口
- 清除指明接口所有地址
- ip addr flsh dev eth0
-
ss命令
- 选项
- -t :TCP协议相关链接
- -u:UDP协议相关链接
- -w:raw socker 相关链接
- -a 所有状态
- -n: 以数字格式显示IP和Port;
- -e:扩展格式信息
- -p:显示相关的进程及PID
- -m:内存用量
- -o:计时器信息
- ss -tan ' ( dport=:22 or sport = :22 )' 指明过滤端口为22
- 配置文件:
- IP/NETMASK/GW/DNS等属性的配置文件:/etc/sysconfig/network-scripts/ifcfg-IFACE:接口名
- 可通过大量的参数来定义接口属性;及vim文本编辑器编辑
- nmtui centos7
- systme-config-network Centos6
- ifcfg-IFACE配置参数
- DEVICE:此配置文件对应的设备的名称
- ONBOOT: 在系统引导过程中,是否激活此接口
- UUID:测设备唯一标示
- BOOTPROTO:激活此接口时使用设么协议来配置接口属性,常用的dhcp,bootp,none;
- TYPE: 接口类型,常见的有Ethernet , Bridge
- DNS1:第一DNS服务器指向;
- DNS2:备用DNS服务器指向;
- IPADDR: IP地址
- GATEWAY:默认网关
- NETMASK:子网掩码, Cenots7 :prefix
- PEERANS: 如果BOOTPROTO的值为"dhcp"是否允许dhcp server分配的dns服务器指向覆盖本地手动指定的DNS服务器指向;默认为允许;
- NM_CONTROLLED: 是否使用NetworkManager 服务来控制接口
- 网络服务:network NeteorkManager
- chekconfig --list 查看 网络服务状态
-
管理网络服务
- 配置文件修改之后,生效需要重启服务
- Centos6: service NETWORK [stop|start|restart|] 关闭/启动/重启
- Centos7: systmectl NETWORK [stop|start|restart|] service 关闭/启动/重启
- 支持两种配置方式但不可混用
- 1
- 每行一个路由条目
- TAEGET via GW
- 2
- 每三行一个路由条目
- ADDRES=TARGET
- NETMASK=MASK
- GATWAY=NEXTHOP
- 给接口配置多个地址
- ip addr之外 ,ifconfig或配置文件都可以;
- 1ifconfig IFACE_LABEL IPADDR/NETMASK
- IFACE_LABEL:eth0:0,1...
- 2,为别名添加配置文件;
- DEVICE=IFACE_LABEL
- BOOTPROTO:网上别名不支持动态获取地址;
- static,none
- 别名的网卡只能自己手动设置不能动态获取
来源:https://www.cnblogs.com/Xun1521/p/6827969.html