1.ip基础知识
(1)什么是网卡?
网卡是工作在链路层的网络组建,是教育网中连接计算机和传输介质的接口,不仅能实现与局域网
传输介质之间的物理连接和电信号匹配,还涉及到帧的发送和接收、帧的封装与拆封、介质访问控制、
数据的编码与解码以及数据缓存的功能等。
(2)什么是IP地址,网段,网关,子网掩码, DNS?
IP地址:IP地址(英语:Internet Protocol Address)是一种在Internet上的给主机编址的方式,也称为网际
协议地址。常见的IP地址,分为IPv4与IPv6两大类。IP地址编址方案将IP地址空间划分为A、B、C、D、E五类,其中A、B、C是基本类,D、E类作为多播和保留使用。
网段:网段一般指一个计算机网络中使用同一物理层设备(传输介质,中继器,集线器等)直接通讯的
那一部分。即IP地址范围从一个到另外一个,如,172.25.254..1到172.25.254..254。
网关:网关(Gateway)又称网间连接器、协议转换器。默认网关在网络层上以实现网络互连,是最复杂的网络互连设备,
仅用于两个高层协议不同的网络互连。网关的结构也和路由器类似,不同的是互连层。网关既可以用于广域网互连,
也可以用于局域网互连。当今很多局域网采用都是路由来接入网络的,因此通常指的网关就是路由器的IP。
子网掩码:子网掩码(subnet mask)又叫网络掩码、地址掩码、子网络遮罩,它是一种用来指明一个IP
地址的哪些位标识的是主机所在的子网以及哪些位标识的是主机的位掩码。子网掩码不能单独存在,它必须结合
IP地址一起使用。子网掩码只有一个作用,就是将某个IP地址划分成网络地址和主机地址两部分。
DNS: DNS每个域名代表一个IP,而DNS服务就是用来在IP与域名之间进行转换的。DNS服务由DNS服务器提供
172.25.0.10/255.255.255.0
10 # 主机号
172.252.0 # 网段
172.25.0.10 # ip地址
255. 255. 255. 0 # 子网掩码
11111111.11111111. 11111111.00000000
注:IP地址前24位是网络部分,也就是说,于此IP地址处在同一个网络的其他主机的IP地址前24位相同,
以证明它们在同一网络通过比较网络部分是否相同来判断是否处于同一网络
2.配置ip
1.临时设定
(1)ifconfig
[root@desktop Desktop]# ifconfig # 查看ip
[root@desktop Desktop]# nm-connection-editor # 先用图形删除本机ip
[root@desktop Desktop]# ifconfig eth0 172.25.254.142/24 # 临时设定ip
[root@desktop Desktop]# ifconfig eth0
[root@desktop Desktop]# ping 172.25.254.78 # 检测ip是否生效,ping真实主机,如果是通的,就说明ip生效
(2)ip addr
[root@desktop Desktop]# ip addr # 查看ip
[root@desktop Desktop]# ip addr # 按tab键,就会出现以下ip addr 的命令
add change del flush help replace show
[root@desktop Desktop]# ip addr del dev eth0 172.25.254.142/24 # 删除ip
[root@desktop Desktop]# ip addr show eth0 # 查看eth0设备上的ip,没有ip,说明删除成功
[root@desktop Desktop]# ip addr add dev eth0 172.25.254.142/24 # 添加临时ip
[root@desktop Desktop]# ip addr show eth0 # 查看是否成功
(3)ping 命令
[root@desktop Desktop]# ping -c 2 172.25.254.42 # ping 2 次就停止
[root@desktop Desktop]# ping -w 2 172.25.254.42 # 等待2秒就停止
[root@desktop Desktop]# ping -c1 -w1 172.25.254.42 # ping一次,等待1秒
2.永久设定
(1)nm-connection-editor # 图形界面
(2)nmtui # 文本化图形添加
(3)命令方式
nmcli connection add type ethernet con-name eth0 ifname eth0 autoconnect yes # 添加动态网络
nmcli connection add type ethernet con-name eth0 ifname eth0 ip4 172.25.254.142/24 # 添加静态网络
nmcli connection delete eth0 # 删除eth0链接
nmcli connection show # 显示所有网络链接
nmcli connection down eth0 # 关闭指定链接
nmcli connection up eth0 # 开启指定链接
nmcli connection modify "eth0" ipv4.addresses newip/24 # 改变eth0的ip
nmcli connection modify "eth0" ipv4.method <auto|manual> # 改变eth0的工作方式为动态或者静态
nmcli device connect eth0 # 开启设备
nmcli device disconnect eth0 # 关闭设备
nmcli device show # 显示设备信息
nmcli device status # 显示设备状态
[root@desktop Desktop]# nmcli device show eth0
GENERAL.DEVICE: eth0
GENERAL.TYPE: ethernet
GENERAL.HWADDR: 52:54:00:1C:87:91
GENERAL.MTU: 1500
GENERAL.STATE: 100 (connected)
GENERAL.CONNECTION: eth0
GENERAL.CON-PATH:
/org/freedesktop/NetworkManager/ActiveConnection/22
WIRED-PROPERTIES.CARRIER: on
IP4.ADDRESS[1]: ip = 172.25.254.142/24, gw = 172.25.254.42
IP6.ADDRESS[1]: ip = fe80::5054:ff:fe1c:8791/64, gw = ::
[root@desktop Desktop]# systemctl stop NetworkManager.service # 关闭NetworkManager服务
[root@desktop Desktop]# nmcli device show eth0 # nmcli命令不能使用
Error: NetworkManager is not running.
[root@desktop Desktop]# nmcli device # 按tab键可以看见device后的所有命令
connect disconnect help show status wifi wimax
[root@desktop Desktop]# nmcli device status
DEVICE TYPE STATE CONNECTION
eth0 ethernet connected eth0
eth1 ethernet connected eth1
lo loopback unmanaged --
[root@desktop Desktop]# nmcli device disconnect eth0
[root@desktop Desktop]# nmcli device status
DEVICE TYPE STATE CONNECTION
eth1 ethernet connected eth1
eth0 ethernet disconnected --
lo loopback unmanaged --
[root@desktop Desktop]# nmcli device connect eth0
[root@desktop Desktop]# nmcli connection # 按tab键可以查看connection后的所有命令
add delete down edit help load modify reload show up
[root@desktop Desktop]# nmcli connection show
NAME UUID TYPE DEVICE
eth1 9c92fad9-6ecb-3e6c-eb4d-8a47c6f50c04 802-3-ethernet eth1
eth0 5fb06bd0-0bb0-7ffb-45f1-d6edd65f3e03 802-3-ethernet eth0
[root@desktop Desktop]# nmcli connection delete # 按tab键能看到可以删除的东西
eth0 eth1 help id path uuid
[root@desktop Desktop]# nmcli connection delete eth0
[root@desktop Desktop]# nmcli connection show
NAME UUID TYPE DEVICE
eth1 9c92fad9-6ecb-3e6c-eb4d-8a47c6f50c04 802-3-ethernet eth1
[root@desktop Desktop]# nmcli connection add con-name eth0 ifname eth0 type ethernet ip4 172.25.254.142/24
[root@desktop Desktop]# ifconfig eth0
[root@desktop Desktop]# nmcli connection modify eth0 ipv4.method auto # 把静态IP改为动态
[root@desktop Desktop]# nmcli connection down eth0 # 如果单个网卡的ip改变,建议用这种方法重启,如果这台主机有多个网卡的话,重启整个网络,会影响其他网卡的工作
[root@desktop Desktop]# nmcli connection up eth0
[root@desktop Desktop]# ifconfig eth0
# 如果ip先是动态的,要用nmcli命令改为静态的,按如下操作
[root@desktop Desktop]# nmcli connection delete eth0 # 删除eth0重新给动态IP
[root@desktop Desktop]# ifconfig eth0
[root@desktop Desktop]# nmcli connection add type ethernet con-name eth0 ifname eth0 autoconnect yes # 设定动态IP
[root@desktop Desktop]# nmcli connection modify eth0 ipv4.addresses 172.25.254.142/24 # 改为静态IP,此处必须先给IP,才能设定为静态
[root@desktop Desktop]# nmcli connection modify eth0 ipv4.method manual
[root@desktop Desktop]# nmcli connection down eth0 # 重启eth0
[root@desktop Desktop]# nmcli connection up eth0
Connection successfully activated (D-Bus active path: /org/freedesktop/NetworkManager/ActiveConnection/7)
[root@desktop Desktop]# ifconfig eth0
(4)文件方式
a.设定动态ip
[root@desktop Desktop]# cd /etc/sysconfig/network-scripts
[root@desktop network-scripts]# vim ifcfg-eth0
1 DEVICE=eth0 # 接口使用模块
2 ONBOOT=yes # 网络服务开启是自动激活
3 BOOTPROTO=dhcp # 网卡工作模式
4 NAME=eth0 # 网络接口名称
[root@desktop network-scripts]# systemctl restart network
[root@desktop network-scripts]# ifconfig eth0 # 获取到一个动态ip
注:获取到的动态ip是在dhcp服务器上获取到的,如果你所在的环境没有dhcp服务器,就不会获取到ip
b.设定静态ip
[root@desktop network-scripts]# vim ifcfg-eth0
1 DEVICE=eth0 # 设备
2 ONBOOT=yes # 设备工作方式
3 BOOTPROTO=none # 网卡工作模式
4 IPADDR=172.25.254.142 # IP
5 NETWORK=255.255.255.0 # 子网掩码
6 #PREFIX=24
7 NAME=eth0
[root@desktop network-scripts]# systemctl restart network
[root@desktop network-scripts]# ifconfig eth0
c.一个静态网卡设定多个ip
[root@desktop network-scripts]# vim ifcfg-eth0
1 DEVICE=eth0
2 ONBOOT=yes
3 BOOTPROTO=none
4 IPADDR0=172.25.254.142
5 PREFIX0=24
6 IPADDR1=172.25.0.142
7 PREFIX1=24
8 NAME=eth0
[root@desktop network-scripts]# systemctl restart network
[root@desktop network-scripts]# ip addr show eth0
注:此时查看id必须用