目录
Linux网络命令与DHCP
1.网络配置命令
1.1ifconfig
- 查看网卡
#不加选项,查看已经启用的网卡
#加选项
[root@localhost ~]#ifconfig -a
#-a 看所有 包括启用和不启用
#加选项
[root@localhost ~]#ifconfig ens33
#网卡名 只看该网卡
- 开启和关闭网卡
[root@localhost ~]#ifconfig ens36 down
#将ens33停掉
[root@localhost ~]#ifconfig ens36 up
#将ens33启用
- 临时修改网卡名称
格式:
ifconfig 网卡名 ip地址/子网掩码
[root@localhost ~]#ifconfig ens31 192.168.8.1
- 设置虚拟网卡
格式:
ifconfig 网卡名:数字 ip地址/子网掩码
[root@localhost ~]#ifconfig ens33:0 10.0.0.5/24
- 取消虚拟网卡
格式:
ifconfig 网卡名:数字 down
[root@localhost ~]#ifconfig ens33:0 down
1.2 IP
1.2.1 ip link 数据链路层
[root@localhost ~]#ip link
1.2.2 ip addr 网络层
[root@localhost ~]#ip addr
1.2.3 路由
[root@localhost ~]#ip route
1.3 hostname
- 查看主机名
临时修改主机名
格式:
hostname 主机名 需要退出
[root@localhost ~]#hostname lj
[root@localhost ~]#exit
1.4 route
- 查看或设置主机中路由表信息
[root@localhost ~]#route -n
-n:将路由记录中的地址信息显示为数字形式
1.4.1 添加指定网段路由
[root@localhost ~]#route add -net 192.168.100.0/24 gw 192.168.8.2 #给192.168.100.0/24段添加静态路由
[root@localhost ~]#route -n #将路由记录中的地址信息显示为数字形式
1.4.2 编译添加
[root@localhost ~]#vim /etc/sysctl.conf
#在末行添加net.ipv4.ip_forward = 1
[root@localhost ~]#sysctl -p #使用sysctl -p使变动立即生效
[root@localhost ~]#ping 192.168.100.0 #ping测试
1.4.3 删除指定网段路由
[root@localhost ~]#route del -net 192.168.100.0/24
#删除指定网段的路由记录
1.4.4 route -n查看
[root@localhost ~]#route -n
#将路由记录中的地址信息显示为数字形式
1.5 ss(socket statistics)
- 是内核里的功能 ,看当前主机连接状态
- ss==netstat
格式:
ss [选项]
[root@localhost ~]#ss | grep "ssh"
[root@localhost ~]#ss -natp | grep "80"
选项
-t: tcp协议相关
-u: udp协议相关
-a: 所有
-n: 显示协议端口号,如不加n,显示协议名称
-p: 进程号等信息
1.6 netstat
- 查看网络连接情况 netstat
格式:
netstat [选项]
不推荐使用
1.7 ping
- 测试网络连通性 ICMP 协议
格式:
ping [选项] 目标主机
[root@localhost ~]#ping -c 2 192.168.8.1
#-c n 发送n个数据包
[root@localhost ~]#ping -w 2 192.168.8.1
#-w n 表示等待n秒
1.8 traceroute
- 路由追踪
格式:
traceroute IP地址
[root@localhost ~]#traceroute 192.168.8.1
1.9 nslookup
- 域名解析 nslookup
格式:
nslookup 域名
[root@localhost ~]#nslookup www.baidu.com
- dig可以显示更多详细信息
[root@localhost ~]#dig www.baidu.com
2.0 永久修改网络相关配置文件
网卡
[root@localhost ~]# vim /etc/sysconfig/network-scripts/ifcfg-ens33
NAME=ens33 //网卡名
BOOTPROTO=static //网卡获取地址模式
ONBOOT=yes //开机是否自启动
IPADDR=192.168.8.1 //配置自己的IP地址
NETMASK=255.255.255.0 //配置子网掩码
GATEWAY=192.168.8.2 //配置网关
DNS1=8.8.8.8 //配置DNS服务器
[root@localhost ~]# systemctl restart network //重启网卡服务
[root@localhost ~]# ping 192.168.8.1 //测试网络是否通顺
2.1 scp
远程同步
[root@localhost opt]#scp /opt/passwd [email protected]:/opt/passwd
命令字 本地文件地址 对方用户名@地址冒号对面地址
[root@localhost opt]#scp [email protected]:/opt/passwd /opt/
命令字 对方用户名@地址冒号对面地址 本地地址
ethtool -i ens33:安装驱动
ethtool -p ens33:快速闪烁
2.2 tcpdump
- 网络数据包截获分析工具
格式
tcpdump [-adeflnNOpqStvx][-c<数据包数目>][-dd][-ddd][-F<表达文件>][-i<网络界面>][-r<
数据包文件>][-s<数据包大小>][-tt][-T<数据包类型>][-vv][-w<数据包文件>][输出数据栏位]
实际操作
[root@localhost ~]#tcpdump -D
#查看网卡
tcpdump
#不指定任何参数,监听第一块网卡上经过的数据包。主机上可能有不止一块网卡,所以经常需要指定网卡。
tcpdump -i ens33
#指定查看ens33 网卡
tcpdump host 192.168.81.100 -i ens33
#监听特定主机,监听主机10.0.0.100 的通信包,注意:出、入的包都会被监听。
[root@localhost ~]#tcpdump -i ens33 src 192.168.8.100 and dst 192.168.8.101
2.3 DHCP过程
DHCP一次完整的过程
- 将客户机加入到局域网中,没有地址,会发送一个discover报文,寻找dhcp服务器
- 收到报文的dhcp服务器会回复一个offer报文,并且将配置信息放在offer报文(IP地址、子网掩码、网关、dns等)
- 客户机收到offer报文后,会将地址等信息配置好,会回复一个request报文
- 服务器收到request报文会发送一个ack报文再次确认
2.3.1 实际操作
[root@localhost ~]#yum install dhcp -y
#安装dhcp服务
[root@localhost ~]#systemctl start dhcpd
#启动dhcp服务,有错误,输入引号中任意一个命令查找错误
[root@localhost ~]#journalctl -xe
#查找错误
[root@localhost ~]#rpm -qc dhcp
#查看配置文件
[root@localhost ~]#vim /etc/dhcp/dhcpd.conf
#vim进入dhcp配置文件
#添加如下所示四行命令,网段地址、地址池、网关地址改为自己本机的,标点符号均为英文符号
subnet 192.168.80.0 netmask 255.255.255.0 {
range 192.168.80.10 192.168.80.20;
option routers 192.168.80.254;
option domain-name-servers 114.114.114.114;
}
[root@localhost ~]#systemctl start dhcpd
#启动dhcp服务
在windows 10虚拟机里查看IP配置
2.3.2 实际操作
首先在windows 10虚拟机下使用命令 "ipconfig /all" 查看物理地址
[root@localhost ~]#vim /etc/dhcp/dhcpd.conf
#vim进入dhcp配置文件下
#将命令输入到配置文件里,修改保留地址
host fantasia {
hardware ethernet 00:0C:29:13:CA:E5;
fixed-address 192.168.8.101;
}
[root@localhost ~]#systemctl restart dhcpd
#重新启动dhcp服务
在windows 10虚拟机里查看IP配置,可以看到保留地址更改成功