CentOS 7.4 ifconfig, ip/ss, nmcli, nmtui, 配置文件 修改ip信息用法
CentOS 7.4 ifconfig, ip/ss, nmcli, nmtui, 配置文件 修改ip信息用法
CentOS 7.4 中, 网卡命名方式发生改变, 可预测功能命名:
网卡简要名称组成格式:
- 前缀
- en: ethernet
- wl:wlan //无线局域网设备
- ww:wwan //无线广域网设备
- 名称类型
- o<index>:集成设备的设备索引号
- onboard板上集成
- s<slot>: 扩展槽的索引号
- x<MAC>:基于MAC地址的命名
- p<bus>s<slot>: PCI总线号+插槽号
- 栗子: enp2s3: 第二个bus第三个插槽
如何回归 CnetOS 6 传统命名方式, 即eth0,1,2...
-
编辑/etc/default/grub配置文件
-4-[root@vm]21:00 ~ # cat /etc/default/grub
GRUB_TIMEOUT=5
GRUB_DISTRIBUTOR="$(sed 's, release .*$,,g' /etc/system-release)"
GRUB_DEFAULT=saved
GRUB_DISABLE_SUBMENU=true
GRUB_TERMINAL_OUTPUT="console"
GRUB_CMDLINE_LINUX="crashkernel=auto rd.lvm.lv=centos/root rd.lvm.lv=centos/swap rhgb quiet"
GRUB_DISABLE_RECOVERY="true"
在GRUB_CMDLINE_LINUX行中插入: "net.ifnames=0 rhgb quiet",
GRUB_CMDLINE_LINUX表示启动时给内核的参数,
"net.ifnames=0 rhgb quiet"表示系统启动过程中不对网卡进行重命名;
即:
GRUB_CMDLINE_LINUX="crashkernel=auto rd.lvm.lv=centos/root rd.lvm.lv=centos/swap rhgb quiet net.ifnames=0 rhgb quiet"
2.使用grup2生成其配置文件
-5-[root@vm]21:11 ~ # grub2-mkconfig -o /etc/grub2.cfg
3.reboot
Linux接入网络简明设置
需求:
-
ip/mask
-
路由:默认网关
-
DNS服务器
-
可配置三个DNS服务器
配置方式:
-
命令行模式:
-
ifconfig / route / netstat<推荐使用ss>
-
ifconfig
-
ifconfig –a 显示所有网卡信息
-
ifconfig INTERFACE [up|down] 激活或禁止某网卡
-
ifconfig 接口 IP/mask [up] 设置某网卡ip地址及MASK
-
启用混杂模式: [ - ]promisc //监控常用
-
route 路由管理命令
-
route –n 以数字形式代替解释主机名形式来显示地址。此项对试图检测对域名服务器进行路由发生故障的原因非常有用;
-
route add 添加路由
-
route add [-net|-host] target [netmask Nm] [gw Gw] [[dev] If]
-
-net 路由目标为网络
-
-host 路由目标为主机
-
e.g.
-
目标192.168.50.10
-
地址192.168.50.1
-
# route add –host 192.168.50.10[/24] gw 192.168.50.1 dev ens33
-
即访问192.168.50.10时, 从192.168.50.1的主机进行路由
-
route del删除路由
-
route del [-net|-host] target [netmask Nm] [gw Gw] [[dev] If]
-
route del –host 192.168.50.10
-
netstat - 显示网络连接,路由表,接口状态,伪装连接,网络链路信息和组播成员组。
-
netstat [--tcp|-t] [--udp|-u] [--raw|-w] [--listening|-l] [--all|-a][--numeric|-n][--extend|-e[--extend|-e]][--program|-p]
-
-t: tcp协议
-
-u:udp协议
-
-w: raw socket裸套接字
-
-l: 处于监听状态
-
-a:所有
-
-n: 以数字显示内容
-
-e: 扩展模式
-
-p: 显示相关进程及PID
-
-r: 显示路由表
-
-i [-Iens33] 显示接口信息(-I后没有空格直接跟接口名)
-
常用组合:
-
-tan: 查看所有tcp协议连接
-
-uan:
-
-tnl: 处于监听状态的tcp连接
-
-unl
-
ss命令 -另一个实用程序来查看套接字
-
ss用于转储套接字统计信息, 效率比netstat高,推荐使用
-
ss [ OPTIONS ] [ FILTER ]
-
-a: 打印所有
-
-n: 数字展示
-
-l: 监听状态
-
-r:尝试解析数字端口
-
-e:扩展模式
-
-t, –u, –p, –w
-
基本与netstat选项无二致; 常用组合相同;
-
ip命令
-
ip [ OPTIONS ] OBJECT { COMMAND | help }
-
OBJECT := { link | address | route}
-
link:
-
ip link - network device Configuration
-
ip link set dev INTERFACE [up|down]
-
show [dev DEVICE] [up]
-
[dev DEVICE] : 指定接口
-
[up]: 仅显示处于激活状态的接口
-
addr
-
ip addr { add | del } INTERFACE dev STRING
-
add
-
[label ‘LABEL’]: 添加网址时指定网卡别名
-
[ scope {global | link | host} ]: 指明作用域
-
global: 全局可用;
-
link: 仅链接可用;
-
host: 本机可用;
-
[ broadcast ADDRESS ] : 指明广播地址 //有用吗?默认不都是255?
-
ip addr show
-
查看ip信息, 基本等同与ifconfig
-
ip route - routing the table
-
添加路由: # ip route add TARGET via GW dev INTERFACE src SOURCE_IP
-
TARGET = IP/MASK
-
GW = Gateway
-
添加网关: #ip route add default via GW dev INTERFACE
-
ip route del 删除路由
-
ip route del TARGET
-
ip route show/list 打开路由表
-
ip route flush
-
清空路由表
-
[via PREFIX] 只清空或显示与指定网关相关的
-
flush 清空整个路由表
-
[dev INTERFACE] 指定接口的路由表
-
nmcli 配置ip地址
-
nmcli [ OPTIONS... ] OBJECT [ COMMAND ] [ ARGUMENTS... ]
-
OBJECT : { help | connection | device }
-
device - show and manage network interfaces //查看管理接口
-
connection - start, stop, and manage network connections
-
nmcli connection modify IFACE [+|-] setting.property value //修改ip地址
-
ipv4.addresses
-
ipv4.gateway
-
ipv4.dns1
-
modify可修改内容包含: [connection, 802-3-ethernet (ethernet), 802-1x, dcb, ipv4, ipv6, proxy]
-
如果更改信息后没有生效: #nmcli device down ens33; nmcli device up ens33
-
或者重启网络服务
-
nmcli device [ up | down ] [ INTERFACE ]
-
nmcli device show [ INTERFACE ]
-
图形界面模式:
-
nmtui-->简单操作易上手
-
setup接口进入nmtui
-
注意: 直接存入配置文件, 需要重启网络服务 service network restart
-
修改配置文件: //推荐使用, 一次更改永久有效
-
IP/MASK, GW, DNS相关配置文件:
-
/etc/sysconfig/network-scripts/ifcfg-INTERFACE
-9-[root@vm]21:31 /etc/sysconfig/network-scripts # cat ifcfg-ens33 HWADDR=00:0C:29:62:AA:F0 //MAC地址 TYPE=Ethernet //模式以太网 PROXY_METHOD=none //代理 BROWSER_ONLY=no //仅允许浏览器上网? BOOTPROTO=static //设备激活时的获取IP方式;如果此处设置为dhcp,且指定IPADDR, 则会给网卡建立两个ip地址, 一个为IPADDR指定, 一个为dhcp指定 IPADDR=192.168.142.128 //IPv4地址 PREFIX=24 //子网掩码位数, C类地址为24 GATEWAY=192.168.142.2 //网关 DNS1=192.168.142.2 //DNS1 DEFROUTE=yes IPV4_FAILURE_FATAL=no IPV6INIT=yes //IPv6初始化, 一般用不到 IPV6_AUTOCONF=yes IPV6_DEFROUTE=yes IPV6_FAILURE_FATAL=no IPV6_ADDR_GEN_MODE=stable-privacy NAME=WiredCon1 //Connection名称 UUID=2ba059ee-b4c2-3d7f-8eda-9085dea1b1d0 ONBOOT=yes //开机启动 AUTOCONNECT_PRIORITY=-999
====================
BOOTPROTO=static //设备激活时获取IP的方式; 如果此处设置为dhcp,且指定IPADDR, 则会给网卡建立两个ip地址, 一个为IPADDR指定, 一个为dhcp指定; 设置dhcp且指定ip, 运行#nmcli connection show WiredCon1可查看到两个IP地址, 而且都可以访问; IP4.ADDRESS[1]: 192.168.142.128/24 IP4.ADDRESS[2]: 192.168.142.131/24 而运行#ifconfig则只能看到其中一个IP; 此时运行 #nmcli connection del 无效; ip addr del也无效; 仅需更改dhcp为static, 重启网络服务即可固定一个ip地址;或单独开启dhcp而不指定ip; # systemctl restart network.service //重启网络服务 这里推荐一个工具netmask, 这是一个ip网段/子网掩码的转换工具, 详细请看博客;
-
路由相关的配置文件:
-
/etc/sysconfig/network-scripts/route-INTERFACE (默认此文件不存在, 需要建立)
-
内容配置如下
-
a>TARGET via GW
-
b>ADDRESS#=TAREGT
NETMASK#=MASK
GATEWAY#=GW -
二选一配置即可
-
DNS服务器指定
-
/etc/resolv.conf
-
nameserver DNS-IP1
-
nameserver DNS-IP2
-
nameserver DNS-IP3
- 给网卡配置多地址:
- ifconfig:
ifconfig IFACE_ALIAS IP/MASK
# ifconfig ens33:0 192.168.50.123/32 up - ip:
ip addr add IP/MASK dev ens33
ip addr del 192.168.50.123/32 dev ens33:0 - nmcli:
- nmcli device modify ens33 +ipv4.addresses 192.168.50.12/24
- nmcli connection modify [连接名称-WiredCon1] +ipv4.addresses 192.168.50.12/24
- 通过device或这con修改的ip地址同时需要对应命令删除或修改
- 配置文件:
ifcfg-ens33_ALIAS
DEVICE=ens33_ALIAS
注意: 网关别名不能使用dhcp协议引导;
杂项:
主机名称配置工具:
hostnamectl
status
set-hostname 'NAME'
或者
配置文件:
#vim /etc/sysconfig/network
HOSTNAME='NAME'
# systemctl restart network.service //重启网络服务
设置默认启动界面为命令行: systemctl set-default multi-user.target
命令行下启动图形界面: startx
TCP的常见状态:
tcp finite state machine:
LISTEN: 监听
ESTABLISHED: 已建立的连接
FIN_WAIT_1
FIN_WAIT_2
SYN_SENT
SYN_RECV
CLOSED