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

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

一般包括如下内容:

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

一.网络配置命令

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

ifconfig来自于net-tools包

基础用法:

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

网卡名称详解:

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

"ens33"中的

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

centos6 网卡 名称叫eth0

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

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

举例:

  • 查看ens33网卡
  • 关闭、开启ens33网卡
  • 设置临时虚拟网卡:
  • 查看通讯情况
  • 查看所有网卡包括未开启的

1.2 hostname------查看主机名称

举例:

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

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

1.3 route

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

命令格式:

举例:

1.4 netstat

查看网络连接情况 netstat

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

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

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

举例:

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软件包的一部分,默认已经安装。

举例:

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

1.6 ping

测试网络连通性 ICMP 协议

格式:

ping [选项] 目标主机

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

举例:

  • ping -c5,只ping5个包
  • ping -w 5,等待时间为5秒,5秒后自动退出。

1.7traceroute------跟踪数据包

路由追踪

格式:

traceroute IP地址

举例:

1.8 nslookup

域名解析 nslookup

格式:

nslook 域名

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

举例:

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

设置网络参数的方式:

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

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

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

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

3.静态NAT网络设置

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

4.双网卡设置

  • 添加网络适配器
  • 查看添加的第二块网卡
  • 修改配置文件
  • 重启网络 并查看

三.tcpdump抓包

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

举例:

四.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的初始化

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地址。

准备:

步骤:

步骤2:

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

案例成功。

相关推荐
小糖学代码1 天前
LLM系列:1.python入门:3.布尔型对象
linux·开发语言·python
shizhan_cloud1 天前
Shell 函数的知识与实践
linux·运维
Deng8723473481 天前
代码语法检查工具
linux·服务器·windows
霍夫曼1 天前
UTC时间与本地时间转换问题
java·linux·服务器·前端·javascript
月熊1 天前
在root无法通过登录界面进去时,通过原本的普通用户qiujian如何把它修改为自己指定的用户名
linux·运维·服务器
大江东去浪淘尽千古风流人物1 天前
【DSP】向量化操作的误差来源分析及其经典解决方案
linux·运维·人工智能·算法·vr·dsp开发·mr
赖small强1 天前
【Linux驱动开发】NOR Flash 技术原理与 Linux 系统应用全解析
linux·驱动开发·nor flash·芯片内执行
IT运维爱好者1 天前
【Linux】LVM理论介绍、实战操作
linux·磁盘扩容·lvm
LEEE@FPGA1 天前
ZYNQ MPSOC linux hello world
linux·运维·服务器
郝学胜-神的一滴2 天前
Linux定时器编程:深入理解setitimer函数
linux·服务器·开发语言·c++·程序人生