linux网络初探

news2024/11/27 2:33:55

linux网络

1.1查看本机ip

IP地址

IP地址=网络地址+主机地址,网络地址(网络号)相同的主机为本地网络中的主机,可以直接相互通信,而网络地址不同的主机为远程网络中的主机,相互通信必须通过本地网关(Gateway)。包括A、B、C、D、E五类。
在这里插入图片描述
A类

网络号规定首位为0,因此第一个字节0-127,但由于特殊地址的存在,实际A类第一个字节为1-126

若网络地址10.0.0.0,广播地址10.255.255.255,有效主机地址10.0.0.1-10.255.255.254

B类

网络号规定前2位为10,因此第一个字节为128-191

若网络地址172.16.0.0,广播地址172.16.255.255,则有效主机地址172.16.0.1~172.16.255.254

C类

网络号规定前3位为110,因此第一个字节为192-223

若网络地址192.168.100.0,广播地址192.168.100.255,有效主机地址192.168.100.1~192.168.100.254

D类

网络号规定前4位为1110,因此第一个字节为224-239

E类

网络号规定前4位为1111,因此第一个字节为240-255

特殊IP

请添加图片描述
标识处于哪一个子网,表示网络本身,网络号固定,主机号全0,如:10.0.0.0,172.16.0.0,192.168.10.0。

网络地址

网络地址=IP地址 & 子网掩码

IP地址:192.168.43.166(11000000 10101000 00101111 10100110)
子网掩码:255.255.255.0(11111111 11111111 11111111 00000000)
网络地址: 192.168.47.0(11000000 10101000 00101111 00000000)

主机地址

标识子网内的哪一个主机
主机地址=IP地址 &(~子网掩码)

IP地址:192.168.43.166(11000000 10101000 00101111 10100110)
子网掩码:255.255.255.0(11111111 11111111 11111111 00000000)
`子网掩码:0.0.0.255(00000000 00000000 0000000 11111111)
主机地址:0.0.0.166(00000000 00000000 00000000 10100110)

广播地址

用于向网络上的所有主机发送信息的地址,网络号固定,主机号全1。如:255.255.255.255(向此地址发送数据包意味给任何网络全部主机发送),172.16.255.255(向网络在172.16.0.0发送),10.255.255.255(向网络在10.0.0.0发送)。

执行ifconfig命令查看所有活动的网络接口信息

执行ifconfig命令

ifconfig -a显示所有活动及非活动的连接
1.1.2查看指定网络接口信息
ifconfig 网络接口

ifconfig 显示已启用的网络接口,不包括禁用的设备

ens33:第一块以太网卡的名称。“ens33"中的"en"是”"EtherNet”"的缩写,表示网卡类型为以太网,"s"表示热插拔插槽上的设备(hot-plugslot.·数字“33”表示插槽编号。lor“回环"网络接口,“1o"是"1oopback"的缩写,它不代表真正的网络接口,而是一个虚拟的网络接口,其IP地址默认是“127.0.0.1”。回环地址通常仅用于对本机的网络测试

inet 192.168.245.211               ip地址
 
netmask 255.255.255.o              子网掩码
 
broadcast 192.168.245.255          广播地址
 
ether 00 : 0c:29:f4:bf:17          mac地址

在这里插入图片描述
RUNNING:代表网卡设备己连接

MULTICAST:表示支持组播

MTU:为数据包最大传输单元

(2)第二行:网卡的IP地址、子网掩码、广播地址

(3)第三行:IP v6地址

(4)第四行:Ethernet(以太网)表示连接类型:ether:表示为网卡的MAC地址

(5)第五行:接受数据包个数、大小统计信息

(6)第六行:异常接受包的个数、如丢包量、错误等

(7)第七行:发送数据包个数、大小统计信息

(8)第八行:发送包的个数、如丢包量、错误等
lo是表示主机的回坏地址,IP地址固定为127.0.0.1,子网掩码为8位,表示本机。

禁用或者重新激活网卡

ifconfig 网络接口 up(开启)

在这里插入图片描述

1.2、Linux查看默认网关

网关

目标IP在同一网段(网络号相同)可以直接通信不需要经过网关,否则需要。如图例,电脑1和电脑2,电脑3和电脑4均在同一网段直接互通,但电脑1和电脑3、4在不同网段,经过网关转发
192.168.43.166/24(11000000 10101000 00101011 10100110) 的默认网关为192.168.43.254/24(11000000 1010100 00101011 11111110)

在这里插入图片描述

默认网关

默认网关地址:网络号固定,主机号除最后一位为全置1(IP地址=网络地址+主机地址)。若一台主机找不到可用网关,就将数据包发送给默认网关,由该网关来转发。
192.168.43.166/24(11000000 10101000 00101011 10100110) 的默认网关为192.168.43.254/24(11000000 1010100 00101011 11111110)

routel | grep default

在这里插入图片描述

[tong@allinone-kolla ~]$ routel | grep default
        default      192.168.150.2                   static           ens33 
        default      192.168.150.2                     dhcp           ens37 
        default        unreachable                   kernel              lo 
        default        unreachable                   kernel              lo 
[tong@allinone-kolla ~]$ 

如果我们使用ping命令百度请添加图片描述
字节代表数据包的大小,时间顾名思义就是返回时间,“TTL”的意思就是数据包的生存时间,当然你得到的这个就是剩余的生存时间。TTL用来计算数据包在路由器的消耗时间,因为现在绝大多数路由器的消耗时间都小于1s,而时间小于1s就当1s计算,所以数据包没经过一个路由器节点TTL都减一。

那么TTL的值一开始是什么呢?不同的操作系统默认下TTL是不同的。默认情况下,Linux系统的TTL值为64或255,Windows NT/2000/XP系统的TTL值为128,Windows 98系统的TTL值为32,UNIX主机的TTL值为255。
上图看到Ping 服务器返回的数据包的TTL值为118一般都是找2^n且离返回值最近的那个值),那么途中则经过了225-128=97个路由器。

第一步:百度ip 61.135.169.125分别和每一条路由表的子网掩码做与运算
第二步:匹配,因为第一条第二条都不匹配,只匹配到了最后一条,
那么就由最后一个网关去转发了。

2.进入root用户

su root

3.进入配置网络的目录(这里其实是进入某个网卡到配置文件)

cd  /etc/ sysconfig/ network- scripts/ ifcfg- en33  (#ifcfg-ens33不同版本可能有不同,有的为ens32等)

4.永久配置网络

vi ifcfg-ens33

内置文件如上图

将BOOTPROTO=none 改成=static

将ONBOOT=no 改成 =yes

并添加

IPADDR= 192.168.25.7     IP地址

NETMASK=255.255.255.0  网络掩码

GATEWAY=192.168.25.2    网关(一般是你家路由器的ip地址,默认网关最常见的一般是:192.168.1.1和192.168.0.1,也就是路由器LAN接口的默认IP地址,自动寻址着的一般,只要自己设置就行了)

DNS1=114.114.114.114  域名解析服务器(电脑DNS设为114.114.114,最主要的功能是为网站提供强大抗攻击能力的智能DNS解析服务)

DNS2=8.8.8.8

PREFIX=24 (此项不输入默认24) # 如果是32位则无法和外接软件连接

:wq 保存退出

在 Linux 命令行中获取路由器的 IP 地址

ip route

它将显示几个条目。

~$ ip route
default via 192.168.1.1 dev wlp0s20f3 proto dhcp metric 600 
169.254.0.0/16 dev wlp0s20f3 scope link metric 1000 
192.168.1.0/24 dev wlp0s20f3 proto kernel scope link src 192.168.1.34 metric 600

第一行,以 default via 开头,给出了你网关的 IP。这是你的路由器的 IP 地址。
在这里插入图片描述

你可以看到,192.168.1.1 是我的路由器的 IP 地址。通常情况下,路由器的 IP 地址是子网的第一个数字。然而,这并不是一个硬性规定。我也见过有 x.y.z.30 地址的路由器。(在 Debian 上)使用 ping 命令来获得网关 IP:

ping _gateway

在这里插入图片描述

5、临时修改下

5.1 我们使用ifconfig命令添加IP地址,语法格式如下:

ifconfig 网卡名 IP地址

例如:[root@localhost ~]# ifconfig lo 192.168.1.100

这样就把ip修改为192.168.1.100了

5.2 添加网关

添加完IP地址后,就要设置网关,此处使用route命令

语法格式如下:route add default gw 网关IP

添加完网关后,使用route命令查看:route -n

添加DNS服务器添加完网关后,我们还需要设置DNS服务器,以便访问Internet上的服务器
我们可以使用resolv.conf文件来设置,该文件在/etc/目录下,文件的内容如下:nameserver DNS服务器IP
在这里插入图片描述
在这里插入图片描述

在这文件里面加入需要的dns服务器地址例如:nameserver 8.8.8.8

5.6 netstat——查看网络连接情况

查看当前操作系统的网络连接状态、路由表、接口统计等信息,它是了解网络状态及排除网络服务故障的有效工具。

-n:以数字的形式显示相关的主机地址、端口等信息
 
-r:显示路由表信息.
 
-a:显示主机中所有活动的网络连接信息(包括监听、非监听状态的服务端口)
 
-l:显示处于监听Listenin状态的网络连接及端口信息
 
-t:查看TCP (Transmission Control Protocol,传输控制协议)相关的信息
 
-u:显示 UDP (User Datagram Protocol,用户数据报协议〉协议相关的信息
 
-p:显示与网络连接相关联的进程号、进程名称信息(该选项需要root权限)

用法:通常使用"-anpt"组合选项,以数字形式显示当前系统中所有的TCP连接信息,同时显示对应的进程信息心配合管道符grep过滤出特定的记录

6:设置网络参数的方式

临时配置——使用命令调整网络参数

简单,快速,可直接修改运行中的网络参数

—般只适合在调试网络的过程中使用

在系统重启后,所做的修改将会失效

固定设置——通过配置文件修改网络参数

修改各项的网络参数配置文件

适合对服务器设置固定参数时使用

网络服务需重启以后才能生效

参考:1、各种网络命令:https://blog.csdn.net/ver_mouth__/article/details/124101310
2、路由的概念:https://blog.csdn.net/heguangsui123/article/details/128181991
3、网卡路由配置:https://blog.csdn.net/jks212454/article/details/125171861
4、Linux网络配置文件的路径及常用配置文件介绍:https://blog.csdn.net/weixin_42279822/article/details/130642160?utm_medium=distribute.pc_relevant.none-task-blog-2defaultbaidujs_baidulandingword~default-4-130642160-blog-127465815.235v36pc_relevant_default_base3&spm=1001.2101.3001.4242.3&utm_relevant_index=5
5、常用配置文件:https://blog.csdn.net/weixin_42974824/article/details/124411624?utm_medium=distribute.pc_relevant.none-task-blog-2defaultbaidujs_baidulandingword~default-0-124411624-blog-127465815.235v36pc_relevant_default_base3&spm=1001.2101.3001.4242.1&utm_relevant_index=1

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/577861.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Flutter Windows开发环境搭建教程与学习资料推荐

Windows应用软件开发有很多框架可以选择,例如比较流行的Electron、Qt、CEF、WPF、WinForm、MFC、DuiLib、SOUI等等。Flutter是近几年流行的全平台应用开发框架,可以进行Android、IOS、Web、MacOS、Windows、Linux等平台的应用软件开发。 一、Flutter介绍…

启动U盘制作工具Rufus 4.0.2035

Rufus是是一款小巧实用免费开源的帮助格式化和创建可启动USB闪存驱动器的工具,如USB钥匙/软盘、记忆棒等,可快速制作linux系统或者win启动u盘,可快速的将ISO镜像文件制作成可引导启动的USB启动盘,支持ISO镜像、GPT和UEFI&#xff…

设置参考文献编号与文中插入引用的具体步骤

目录 一、前言 二、操作步骤 (一)参考文献设置编号 (二)文章中引用参考文献方式 一、前言 本教程使用的软件是WPS 二、操作步骤 (一)参考文献设置编号 1.把引用文献的这个编号全部删掉 2.右键点击段…

学习笔记——vue中使用el-dropdown组件报错

今天在工作中,发现使用el-select做的下拉框,下拉菜单展开后,鼠标点击下拉框之外的区域时,下拉菜单没有收起。然后,我打开控制台,发现了这个错误。 Uncaught TypeError: Cannot read properties of null (re…

《Linux0.11源码解读》理解(四) head之重新设置IDT/GDT

上节提到,现在cs:ip指向0地址,此处存储着作为操作系统核心代码的system模块,是由head.s和 main.c以及后面所有源代码文件编译链接而成。head.s(以下简称head)紧挨着main.c,我们先执行head。 重新设置内核栈 _pg_dir: _startup_3…

堆(堆排序 模拟堆)

目录 一、堆的数据结构二、堆的操作方法往下调整的示意图往上调整的示意图相关功能的实现思路1.插入一个数2.求最小值3.删除最小值4.删除任意一个元素5.修改任意一个元素 三、堆的实战运用堆排序模拟堆 一、堆的数据结构 堆是一个完全二叉树:除了最后一层结点以外&…

C语言三子棋,五子棋,n子棋的代码实现

C语言三子棋,五子棋,n子棋的代码实现 这里以五子棋为例,来说明开发过程开发思路菜单打印棋盘的打印棋子的打印电脑下棋(随机数)判断输赢代码整合注意事项 这里以五子棋为例,来说明开发过程 其中该项目包含…

《用户增长方法论》从产品、渠道、营销创意等多个维度,搭建了一套完整的用户增长方法体系

关于作者 黄永鹏,目前在阿里巴巴担任高级用户增长专家。黄永鹏是一个典型的 “ 斜杠青年 ” ,十年前从广告咨询行业转战互联网,在 BAT 三家 公司都待过,负责过多款用户和日活过亿的产品,比如腾讯手机管家、百度地图…

chatgpt赋能python:Python练手:提高你的SEO技能

Python练手:提高你的SEO技能 在当今数字化时代,搜索引擎优化(SEO)成为了网站和企业在线成功的关键。优化技巧既可以提高网站的排名,还可以增加网站的可见性,从而吸引更多的流量和潜在客户。Python是一个适…

网络通信协议-ARP协议

目录 一、ARP协议 二、ARP协议通信过程 应用情景一:同一广播域内通信 (1)第一步:ARP协议通信 1.交换机接受消息 2.电脑2接收到广播消息 3.电脑2回复 4.交换机转发回复给电脑1 5.电脑1记录 (2)第二…

Go快速上手之基础语法 | 青训营笔记

Go快速上手之基础语法 | 青训营笔记 文章目录 Go快速上手之基础语法 | 青训营笔记系列介绍本文摘要1. Go 介绍2. Go 的环境配置2.1 :sparkles: IDE2.2 Gitpod 和 Jetbrians Gateway 的使用 3. Go的基础语法3.1 Hello World3.2 变量与常量3.3 条件控制语句…

Linux(进程间通信)

目录: 1.进程间通信的介绍 2.管道通信 3.管道的原理 ------------------------------------------------------------------------------------------------------------------------------- 1.进程间通信的介绍 2.管道通信 当我们在创建子进程时,我们的…

chatgpt赋能python:Python生成pyc文件的介绍

Python生成pyc文件的介绍 Python是一种解释型语言,但是在执行某些操作时,它会生成缓存文件,以便提高执行效率。这些缓存文件以 .pyc 扩展名保存在同一目录中。 在本文中,我们将重点介绍Python生成pyc文件,并探讨它们…

使用Python绘制M2货币供应率曲线

M2广义货币供应量:流通于银行体系之外的现金加上企业存款、居民储蓄存款以及其他存款,它包括了一切可能成为现实购买力的货币形式,通常反映的是社会总需求变化和未来通胀的压力状态。近年来,很多国家都把M2作为货币供应量的调控目…

Fedora安装并配置开启SSH服务相关命令

Ubuntu参考我这篇:虚拟机里安装ubuntu-23.04-beta-desktop-amd64,开启SSH(换源、备份),配置中文以及中文输入法等 一、过程 1、检测是否安装了openssh-server $ rpm -qa | grep openssh-serveropenssh-server-7.9p1-5.fc30.x86_642、如果上…

【web框架】——Django——如桃花来

目录索引 web框架介绍:常见软件的架构:*CS架构:**BS架构:* 网络通信:socket知识复习:*服务端代码逻辑:**客户端代码逻辑:* socket代码演示:*服务端代码演示:*…

chatgpt赋能python:Python生成:深入了解Python编程中的生成

Python 生成:深入了解Python编程中的生成 简介 Python是一门多用途编程语言,广泛应用于 Web 开发,数据分析,人工智能和科学计算等领域。在Python编程中,生成是一个强大而又常用的概念。本文将介绍Python编程中的生成…

如何在华为OD机试中获得满分?Java实现【输入n个整数,输出其中最小的k个】一文详解!

✅创作者:陈书予 🎉个人主页:陈书予的个人主页 🍁陈书予的个人社区,欢迎你的加入: 陈书予的社区 🌟专栏地址: Java华为OD机试真题(2022&2023) 文章目录 1. 题目描述2. 输入描述3. 输出描述…

Java 的 String、StringBuffer 和 StringBuilder(一文讲透)

提到 String、StringBuffer 和 StringBuilder,就不得不谈及它们的历史,在了解它们的历史之后,我们对它们的理解将更上一级台阶! 发展历史 String 与 StringBuffer 的出现 String 和 StringBuffer 在 Java1.0 中就已经有了&…

chatgpt赋能python:Python自动操作软件:提高工作效率和节省时间的利器

Python自动操作软件:提高工作效率和节省时间的利器 Python是一种高级编程语言,具有易读易用、快速开发、可移植性好、跨平台兼容等优点。它在自动化操作方面具有很大的优势,可以帮助用户实现各种自动化操作,从而为我们的工作提供…