Linux入门攻坚——11、Linux网络属性配置相关知识1

news2025/1/11 19:46:27

网络基础知识
局域网:以太网,令牌环网,
    Ethernet:CSMA/CD
        冲突域
        广播域
    MAC:Media Access Control,共48bit,前24bit需要机构分配,后24bit自己自由使用
    IP:Internet Protocol
        Routing Protocol
        Routed Protocol

    传输层协议:tcp、udp、sctp
    网络层协议:ip

ip协议:
    IPv4地址分类:
        点分十进制:0-255
        0000 0000 - 1111 1111
        0.0.0.0 - 255.255.255.255
        A类:
            0 000 0000 - 0 111 1111 : 1-127
            网络数:126个,127环回地址;每个网络中的主机数:2^24-2;默认子网掩码:255.0.0.0
            私网地址:10.0.0.0/8
        B类:
            10 00 0000 - 10 11 1111 : 128-191
            网络数:2^14个;每个网络中的主机数:2^16-2;默认子网掩码:255.255.0.0
            私网地址:172.16.0.0/16-172.31.0.0/16
        C类:
            110 0 0000 - 110 1 1111 : 192-223
            网络数:2^21个;每个网络中的主机数:2^8-2;默认子网掩码:255.255.255.0
            私网地址:192.168.0.0/24-192.168.255.0/24
        D类:组播用
            1110 0000 - 1110 1111 : 224 - 239
        E类:
            240-255    

    子网掩码:用来进行网络号计算的
        跨网络通信:路由
        主机路由:目的是一个主机地址
        网络路由:目的是一个网络
        默认路由:
        按匹配精度优先级,最佳匹配原则:主机路由>网络路由>默认路由

Linux主机接入到网络中

需要配置:
    IP/mask:
    路由:默认网关
    DNS服务器:主DNS服务器、次DNS服务器、第三DNS服务器
配置方式:
    静态指定:分为几个命令家族
        ifcfg:ifconfig,route,netstat
        ip:object:{linkaddrroute},ss,tc
        配置文件:直接编辑配置文件,有图形工具如下
            (setup) system-config-network-tui
        CentOS 7:
            nmcli,nmtui
    动态分配:
        DHCP:Dynamic Host Configuration Protocol

配置网络接口
    接口命名方式:
        CentOS 6:
            以太网:eth[0,1,2,...]
            ppp:ppp[0,1,2,...]

    ifconfig命令
        ifconfig [interface] 
            # ifconfig -a    显示所有网络接口信息,包括没激活接口,不带-a,只显示活动接口
            # ifconfig IFACE [up | down] 

        ifconfig interface [aftype] options | address ...
            # ifconfig IFACE IP/mask_length [up]
            # ifconfig IFACE IP netmask MASK

        注意:立即生效,但不会永久有效;
        启用混杂模式:[ - ]promisc


    route命令:路由管理命令
        查看:route -n
        添加:route add [ -net | -host ] target [ netmask Nm ] [ gw Gw ] [[dev] If]
        例子:目标:192.168.1.3    网关:172.16.0.1  
        route add -host 192.168.1.3 gw 172.16.0.1 dev eth0
                   目标:192.168.0.0   网关:172.16.0.1
        route add -net 192.168.0.0 netmask 255.255.255.0 gw 172.16.0.1 dev eth0
        route add -net 192.168.0.0/24 gw 172.16.0.1 dev eth0
                   默认路由:
        route add -net 0.0.0.0 netmask 0.0.0.0 gw 172.16.0.1
        route add default gw 172.16.0.1
        本地网关一定是与本地地址在同一网络段的地址,否则无法直接将报文发给网关
        删除:route del [ -net | -host] target [ gw Gw ] [ netmask Nm ] [ [dev] If ]
        route del -host 192.168.1.3
        route del -net 192.168.0.0 netmask 255.255.255.0

不加-n,会将地址进行反解成名字。

    DNS服务器指定:
        /etc/resolv.conf
            nameserver DNS_SERVER_IP1
            nameserver DNS_SERVER_IP2
            nameserver DNS_SERVER_IP3
        正解:FQDN --> IP,  dig -t A FQDN;   host -t A FQDN
        反解:IP --> FQDN,  dig -x IP;            host -t PTR IP
           FQDN:www.baidu.com

    netstat命令:Print network connections, routing tables, interface statistics, masquerade connections, and multicast memberships

        显示网络连接:
            netstat [ --tcp | -t ] [ --udp | -u ] [ --raw | -w] [ --listening | -l ] [ --all | -a ] [ --numeric | -n ] [ --numeric-hosts ] [ --numeric-ports ] [ --extend | -e[--extend|-e] ] [ --program | -p ]
            -t:tcp协议相关
            -u:udp协议相关
            -r:raw socket相关
            -l:处于监听状态
            -a:所有状态
            -n:以数字显示IP和端口,不反解
            -e:扩展格式
            -p:显示相关进程及PID
        常用组合:-tan, -uan , -tnl , -unl

        显示路由表:
            netstat {--route | -r } [--extent | -e[--extend|-e] ] [ --verbose | -v ] [ --numeric | -n ]
            -r:显示内核路由表
            -n:数字格式

        显示接口统计数据:
            netstat { --interfaces | -I | -i } [ iface ] [--all | -a] [ --extend |-e] [ --program | -p ] [ --numeric | -n ]
                # netstat -i 所有接口
                # netstat -IIFACE 指定接口,-I和接口名之间无空格

总结:ifcfg家族命令配置
    ifconfig/route/netstat
    ifup/ifdown

配置Linux网络属性:ip命令

    ip [ OPTIONS ] OBJECT { COMMAND | help }
    OBJECT := { link | addr | addrlabel | route | rule | neigh | tunnel | maddr | mroute | monitor }

    link OBJECT:
        ip link show [ dev  IFACE] [ up ]      [ dev  IFACE]显示指定接口,[ up ]显示启用的接口
        ip link set dev IFACE  [up | down]  

    addr OBJECT
        ip addr {add | del } IFADDR dev STRING   [label LABEL] [scope {global | link | host }] [broadcast ADDRESS]
            add是添加一个地址,原来配置一个ip,则又添加一个IP地址
             [label LABEL] :添加地址时指明网卡别名
             [scope {global | link | host }] :指明作用域
                 global:全局可用;link:仅链接可用;host:本机可用
             [broadcast ADDRESS] :指明广播地址
        ip addr show [dev IFACE] [label PATTERN] [primary and secondary]
            显示IP地址

        ip addr flush dev IFACE  label PATTERN
            清空IP地址





    route OBJECT:
        ip route  add
            添加路由:ip route add TARGET via GW dev IFACE src SOURCE_IP
                TARGET:主机路由:IP;网络路由:NETWORK/MASK;默认网关:default
        ip route delete
            删除路由:ip route del TARGET 
        ip route show
        ip route flush
            [dev IFACE]
            [via PREFIX]


ss命令:网络查看工具
    ss [OPTION]... [FILTER]
       OPTIONS:
        -t:tcp协议相关
        -u:udp协议相关
        -w:裸套接字
        -x:unix sock相关
        -l:listen状态的连接
        -a:所有
        -n:数字格式
        -p:相关的程序及PID
        -e:扩展的信息
        -m:内存用量
        -o:计时器信息
        FILTER:=[state TCP-STATE ] [ EXPRESSION ]
        LISTEN:监听
        ESTABLISHED:已经建立的连接
        FIN_WAIT_1:
        FIN_WAIT_2:
        SYN_SENT:
        SYN_RECV:
        CLOSED:
        EXPRESSION:
        dport=
        sport=
        示例:‘( dport=:ssh or sport =:ssh)’
常用组合:-tan,tanl,-tanlp,-uan


Linux网络属性配置(3):修改配置文件
   IP、MASK、GW、DNS相关配置文件:  /etc/sysconfig/network-scripts/ifcfg-IFACE
    路由相关的配置文件:/etc/syscofnig/network-scripts/route-IFACE

    /etc/sysconfig/network-scripts/ifcfg-IFACE
        DEVICE="" :此配置文件应用到的设备;
        HWADDR:对应设备的MAC地址;
        BOOTPRORO:激活此设备时使用的地址配置协议,常用的dhcp,static,none,bootp
        NM_CONTROLLED:NM是NetworkManager的简写,此网卡是否接受NM控制,CentOS6建议为"no"
        ONBOOT:在系统引导时是否激活此设备
        TYPE:接口类型,常见有Ethernet,Bridge,
        UUID:设备的唯一标识

        IPADDR:指明IP地址
        NETMASK:子网掩码
        GATEWAY:默认网关
        DNS1:第一个DNS服务器指向
        DNS2:
        USERCTL:普通用户是否可控制此设备;
        PEERDNS:如果BOOTPROTO的值为“dhcp”,是否允许dhcp server分配的dns服务器指向信息直接覆盖至/etc/resolv.conf文件中。

    /etc/sysconfig/network-scripts/route-IFACE
    两种风格:
        (1)TARGET via GW
        (2)每三行定义一条路由
            ADDRESS#=TARGET
            NETMASK#=mask
            GATEWAY#=GW

给网卡配置多地址:
    ifconfig:
        ifconfig IFACE_ALIAS
            ifconfig eth0:0 192.168.0.22/24
    ip
        ip addr add
    配置文件:
        ifcfg-IFACE_ALIAS
            DEVICE=IFACE_ALIAS
    注意:网卡别名不能使用dhcp协议引导;

Linux网络属性配置的tui(text user interface):
    system-config-network-tui

    还可以使用setup命令,然后调用Network configuration

注意:要重新启动网络服务才能生效。
ifconfig eth0 down;ifconfig eth0 up
service network restart   -->  /etc/rc.d/init.d/network restart

配置当前主机的主机名:
    命令:hostname [HOSTNAME]
    配置文件:/etc/sysconfig/network
        HOSTNAME=

网络接口识别并命名相关的udev配置文件:
    /etc/udev/rules.d/70-persistent-net.rules
        文件中修改NAME=的值,修改后需要卸载和重新装载网卡驱动,才能生效
    卸载网络驱动:modprobe -r e1000
    装载网卡驱动:modprobe e1000

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

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

相关文章

安装阿里云CLI之配置阿里云凭证信息

有时候需要再主机上通过 OpenAPI 的调用访问阿里云,并完成控制,此时就需要在服务器上安装阿里云CLI,并完成账号的设置。 1. 登录阿里云创建账号 1.1 点击阿里云头像 ——》 控制访问 ——》创建一个拥有DNS权限的用户 这个用户不用太多权限…

Service Weaver:Google开源基于分布式应用程序开发的框架,重新定义微服务边界

大家好,我是萧楚河,公众号:golang面试经典讲解,感谢关注,一起学习一起成长。一、前言 今年6月,一群谷歌员工(由谷歌软件工程师Michael Whittaker领导)发表了一篇名为“Towards Mode…

对接第三方接口鉴权(Spring Boot+Aop+注解实现Api接口签名验证)

前言 一个web系统,从接口的使用范围也可以分为对内和对外两种,对内的接口主要限于一些我们内部系统的调用,多是通过内网进行调用,往往不用考虑太复杂的鉴权操作。但是,对于对外的接口,我们就不得不重视这个…

MySQL--基础篇

这里写目录标题 总览MySQl各个阶段基础篇总览 MySQL概述数据库相关概念查看本机MySQL版本号启停mysql打开windows服务管理windows命令行启停 连接mysql客户端mysql运行逻辑数据模型关系型数据库 总结 SQL总览SQL通用语法SQL语句分类DDL数据库操作表操作查询表创建表结构数据类型…

有什么安全处理方案可以有效防护恶意爬虫

常见的爬虫 有百度爬虫、谷歌爬虫、必应爬虫等搜索引擎类爬虫,此类爬虫经常被企业用于提高站点在搜索引擎内的自然排名,使得站点在各大搜索引擎中的排名能够提高,进一步通过搜索引擎来进行引流为企业增加业务流量。 恶意爬虫与合法、合规的搜…

看了致远OA的表单设计后的思考

更多ruoyi-nbcio功能请看演示系统 gitee源代码地址 前后端代码: https://gitee.com/nbacheng/ruoyi-nbcio 演示地址:RuoYi-Nbcio后台管理系统 更多nbcio-boot功能请看演示系统 gitee源代码地址 后端代码: https://gitee.com/nbacheng/n…

微信小程序的驾校预约管理系统

🍅点赞收藏关注 → 私信领取本源代码、数据库🍅 本人在Java毕业设计领域有多年的经验,陆续会更新更多优质的Java实战项目希望你能有所收获,少走一些弯路。🍅关注我不迷路🍅一 、设计说明 1.1课题背景 在I…

【教学类-43-16】 20240106 推算5-9宫格数独可能出现的不重复题量(N宫格数独模板数量的推算)

作品展示: 通过对各种已有结果的人工推算,目前得到两个结论 一、阶乘基本样式的数量【【123】【321】【231】【132】【312】【312】】6组 结论:阶乘等于出现的基本样式数量 以下N*N格会出现的最大排序数量(比如包含333222111这种…

Spring声明式事务业务bug

Spring 针对 Java Transaction API (JTA)、JDBC、Hibernate 和 Java Persistence API (JPA) 等事务 API,实现了一致的编程模型,而 Spring 的声明式事务功能更是提供了极其方便的事务配置方式,配合 Spring Boot 的自动配置,大多数 …

C++ 二进制图片的读取和blob插入mysql_stmt_init—新年第一课

关于二进制图片的读取和BLOB插入一共包含五步 第一步:初始化 MYSQL_STMT* stmt mysql_stmt_init(&mysql); 第二步:预处理sql语句 mysql_stmt_prepare(stmt,sql,sqllen); 第三步:绑定字段 mysql_stmt_bind_param(stmt,bind); 第四…

用友U8+CRM 逻辑漏洞登录后台漏洞复现

0x01 产品简介 用友U8 CRM客户关系管理系统是一款专业的企业级CRM软件,旨在帮助企业高效管理客户关系、提升销售业绩和提供优质的客户服务。 0x02 漏洞概述 用友 U8 CRM客户关系管理系统 reservationcomplete.php文件存在逻辑漏洞,未授权的攻击者通过…

手把手带你门SpringCloud

目录​​​​​ 1、什么是 SpringCloud? SpringCloud常用组件: 简单介绍组件间作用 2,SpringCloud相关组件:Eureka 3,Spring Cloud核心组件:Feign 4,Spring Cloud核心组件:Zuu…

软件测试|Docker exec命令详细使用指南

简介 Docker exec命令是Docker提供的一个强大工具,用于在正在运行的容器中执行命令。本文将详细介绍Docker exec命令的用法和示例,帮助大家更好地理解和使用这个命令。 Docker是一种流行的容器化平台,允许我们在容器中运行应用程序。有时候…

locust 快速入门--程序调试

背景 对测试的api引入locust后,不在使用requests库进行http请求了,而是通过client属性发送请求,实质是使用HttpSession。 问题:如果对locust程序进行调试 解决方案: 因为locust使用协程,需要开启pych…

微服务-java spi 与 dubbo spi

Java SPI 通过一个案例来看SPI public interface DemoSPI {void echo(); } public class FirstImpl implements DemoSPI{Overridepublic void echo() {System.out.println("first echo");} } public class SecondImpl implements DemoSPI{Overridepublic void ech…

万界星空科技云MES,助力客户快速构建数字工厂

一、MES发展趋势 1、定制化趋势 工业2.0、3.0的技术已较为成熟,部分制造业水平较为发达的国家已经率先进入以网络化、智能化为代表的工业4.0发展阶段,MES作为制造业规划层随着物联网等持续发展,为适应定制化时代,整体技术模块化、服务化将重…

解决Gitee每次push都需要输入用户名和密码

其实很简单,只需要使用命令 git config --global credential.helper store 在你下次push时只需要再输入一次用户名和密码,电脑就会保存下来,之后就无需进行输入了。

TypeScript 从入门到进阶之基础篇(三) 元组类型篇

系列文章目录 TypeScript 从入门到进阶系列 TypeScript 从入门到进阶之基础篇(一) ts基础类型篇TypeScript 从入门到进阶之基础篇(二) ts进阶类型篇 文章目录 系列文章目录TypeScript 从入门到进阶系列前言一、在TypeScript中使用元组二、TypeScript 中元组的使用场景1、让函…

从Spring Cloud Alibaba开始聊架构

作为SpringCloudAlibaba微服务架构实战派上下册和RocketMQ消息中间件实战派上下册的作者胡弦。 另外我的新书RocketMQ消息中间件实战派上下册,在京东已经上架啦,目前都是5折,非常的实惠。 https://item.jd.com/14337086.htmlhttps://item.jd…

【详解】求解迷宫所有路径(递归实现)----直接打穿迷宫

目录 递归的模型: 栈帧: 递归调用深度: ​编辑 用递归算法求解迷宫问题: 小结: 结语: 递归的小小总结,朋友们可以看看,有助于理解后面的递归程序。 递归的模型: …