LINUX 网络命令与DHCP原理和配置

将Linux主机接入到网络,需要配置网络相关设置

一般包括如下内容:

  • 主机名
  • IP/netmask
  • 路由:默认网关
  • DNS服务器
  • 主DNS服务器
  • 次DNS服务器
  • 第三个DNS服务器

一.网络配置命令

1.1ifconfig——查看网络接口信息

ifconfig来自于net-tools包

微信截图_20230802115640.png

基础用法:

在不带任何选项和参数执行 ifconfig 命令时, 将显示当前主机中已启用(活动)的网络接口信息

网卡名称详解:

ens33:第一块以太网卡的名称详解:

“ens33”中的

  • “en”是“EtherNet”的缩写,表示网卡 类型为以太网,
  • “s” 表示热插拔插槽上的设备(hot-plug Slot),
  • 数字“33”表示插槽 编号

centos6 网卡 名称叫eth0

微信截图_20230802115743.png

微信截图_20230802115922.png

1.1.2 查看/开启/关闭/设置指定网卡

格式:ifconfig + 网卡名称 + [up|down]

举例:

  • 查看ens33网卡

微信截图_20230802120325.png

  • 关闭、开启ens33网卡

微信截图_20230802120906.png

  • 设置临时虚拟网卡:

微信截图_20230802121135.png

  • 查看通讯情况

微信截图_20230802122216.png

  • 查看所有网卡包括未开启的

微信截图_20230802122255.png

1.2 hostname——查看主机名称

举例:

  • 查看主机名称

微信截图_20230802122702.png

  • 临时修改主机名称

微信截图_20230802122932.png

  • 永久修改主机名称,修改后重启生效:

编辑配置文件/etc/hostname,该文件只对第一行生效。

微信截图_20230802150803.png

微信截图_20230802150842.png

1.3 route

查看或设置主机中路由表信息

命令格式:

微信截图_20230802151455.png

举例:

微信截图_20230802151703.png

1.4 netstat

查看网络连接情况 netstat

netstat命令是一个监控TCP/IP网络的非常有用的工具,它可以显示路由表、实际的网络连接以及每一个网络接口设备的状态信息。

服务不能用 ,ftp httpd网页无法访问

  1. 一般先ping 看能不能通 如果你网络不通 网络调通 防火墙 抓包
  2. 看看你的服务是否开启 syetemctl status 服务名
  3. ss netstat 看看你的 服务端口是否被占用 一个给一个服务 网页 80 你 apache nginx
  4. 最后看你 服务的配置文件是否正确

微信截图_20230802152018.png

举例:

微信截图_20230802152327.png

1.5ss(socket statistics)

ss [选项]

ss 命令:也可以查看网络连接情况,主要用于获取 socket 统计信息,它可以显示和 netstat 命令类似的输出内容,但 ss 的优势在于它能够显示更多更详细的有关 TCP 和UDP连接状态的信息,而且比 netstat 更快速更高效 当服务器的socket连接数量变得非常大时,无论是使用netstat命令还是直接cat /proc/net/tcp,执行速度都会很慢。

ss快的秘诀在于,它利用到了TCP协议栈中tcp_diag。tcp_diag是一个用于分析统计的模块,可以获得Linux 内核中第一手的信息,这就确保了ss的快捷高效 ss命令是Linux CentOS 7中iproute软件包的一部分,默认已经安装。

微信截图_20230802152650.png

举例:

查看TCP协议下的22端口是否开启

微信截图_20230802153015.png

1.6 ping

测试网络连通性 ICMP 协议

格式:

ping [选项] 目标主机

微信截图_20230802153230.png

  • -c 选项是发送多少个包

举例:

  • ping -c5,只ping5个包

微信截图_20230802155247.png

  • ping -w 5,等待时间为5秒,5秒后自动退出。

微信截图_20230802155520.png

1.7traceroute——跟踪数据包

路由追踪

格式:

traceroute IP地址

举例:

微信截图_20230802155824.png

1.8 nslookup

域名解析 nslookup

格式:

nslook 域名

微信截图_20230802160353.png

1.9dig 可以显示出更多详细信息

举例:

微信截图_20230802160707.png

二.永久修改网络相关配置文件

设置网络参数的方式:

1.临时配置–使用命令调整网络参数

-   简单、快速,可直接修改运行中的网络参数
-   一般只适合在调试网络的过程中使用
-   系统重启以后,所做的修改将会失效

2.固定设置–通过配置文件修改网络参数

-   修改各项网络参数的配置文件
-   适合对服务器设置固定参数时使用
-   需要重载网络服务或者重启以后才会生效

3.静态NAT网络设置

网卡配置文件:/etc/sysconfig/network-scripts/ifcfg-ens33

微信截图_20230802161658.png

4.双网卡设置

  • 添加网络适配器

微信截图_20230802162134.png

  • 查看添加的第二块网卡

微信截图_20230802162411.png

  • 修改配置文件

微信截图_20230802163411.png

微信截图_20230802163019.png

  • 重启网络 并查看

微信截图_20230802163729.png

三.tcpdump抓包

网络数据包截获分析工具。支持针对网络层、协议、主机、网络或端口的过滤。并提供and、or、not等逻辑语句帮助去除无用的信息。

微信截图_20230802164102.png

举例:

微信截图_20230802164232.png

微信截图_20230802164443.png

四.DHCP

1.DHCP工作原理

DHCP(Dynamic Host Concentration Protocol,动态主机配置协议)

由internet工作任务小组设计开发

专门用于为TCP/IP网络中的计算机自动分配TCP/IP参数的协议

2.使用DHCP好处

  • 减少管理员的工作量

  • 避免输入错误的可能

  • 避免ip地址冲突

  • 当更改IP地址段时,不需要重新配置每个用户的IP地址

  • 提高了IP地址的利用率

  • 方便客户端的配置

3.DHCP的分配方式

自动分配:分配到一个IP地址后永久使用

手动分配:由DHCP服务器管理员专门指定IP地址

动态分配:使用完后释放ip,供其他客户机使用

4.DHCP的租约过程

4.1客户机请求IP地址

当一个DHCP客户机启动时,客户机还没有IP地址,所以客户机要通过DHCP获取一个合法的地址

此时DHCP客户机以广播的方式发送DHCP Discover发现送信息来寻找DHCP服务器

4.2服务器响应

DHCP服务器接收到来自客户机请求IP地址的信息时,在自己的IP地址池中查找是否有合法的IP地址提供给客户机

如果有,DHCP服务器将此IP地址做上标记,加入到DHCP Offer的消息中,然后广播一则DHCP Offer消息

4.3客户机选择IP地址

DHCP客户机从接收到的第一个DHCP Offer消息中提取IP地址,发出IP地址的DHCP服务器将该地址保留,这样该地址就不能再分配给另一个DHCP客户机

4.4服务器确定租约

DHCP服务器接收到DHCP Request消息后,以DHCPACK消息的形式向客户机广播成功确认,该消息包含有IP地址的有效租约和其他可配置的信息
当客户机收到DHCP ACK消息时,配置lP地址,完成TCP/IP的初始化

微信截图_20230802170053.png

5.客户机续租分两步

5.1重新登录

DHCP客户机每次重新登录网络时,不需要再发送DHCPDiscover信息,而是直接发送包含前一次所分配的IP地址的DHCP Request请求信息

5.2更改租约

  • 当DHCP服务器向客户机出租的IP地址租期达到50%时,就需要更新租约

  • 客户机直接向提供租约的服务器发送DHCP Request包,要求更新现有的地址租约

6.DHCP服务器的配置

使用DHCP动态配置主机地址

DHCP服务

  • 为大量客户机自动分配地址,提供集中管理

  • 减轻管理和维护成本、提高网络配置效率

可分配的地址信息主要包括

网卡的IP地址、子网掩码

对应的网络地址、广播地址

默认网关地址

DNS服务器地址

7. DHCP客户端的使用

要求:

将Linux虚拟机设置成DHCP服务器,自动分配IP地址给Windows10 虚拟机。

思路:

  1. Linux虚拟机关闭防火墙和selinux。

  2. 安装 dhcp 软件包,并查看配置文件。

  3. 修改网卡配置文件,之后重启网络服务。

  4. 编辑dhcp服务的配置文件/etc/dhcp/dhcpd.conf,设置网段、地址池、网关地址。之后重启dhcp服务。

  5. 验证Windows10虚拟机虚拟机能否获取DHCP服务器分配的IP地址。

准备:

微信截图_20230802170900.png

微信截图_20230802171038.png

微信截图_20230802171227.png

步骤:

微信截图_20230802171437.png

微信截图_20230802171721.png

微信截图_20230802191229.png

微信截图_20230802191410.png

微信截图_20230802191605.png

微信截图_20230802191839.png

微信截图_20230802191946.png

步骤2:

另外打开一台windows10系统电脑,打开命令行释放ip地址。

微信截图_20230802192303.png

微信截图_20230802192646.png

案例成功。

© 版权声明
THE END
喜欢就支持一下吧
点赞0

Warning: mysqli_query(): (HY000/3): Error writing file '/tmp/MYZfviHd' (Errcode: 28 - No space left on device) in /www/wwwroot/583.cn/wp-includes/class-wpdb.php on line 2345
admin的头像-五八三
评论 抢沙发
头像
欢迎您留下宝贵的见解!
提交
头像

昵称

图形验证码
取消
昵称代码图片