精华内容
下载资源
问答
  • Android 判断IP地址及端口是否正确

    万次阅读 2021-03-17 18:18:53
    一、前言 在进行网络编程时,端口或者...a) IP地址长度判断 b) 切割字符串,是否能够被分为四段 c) 每段是否为数字 d) 每个数字是否在0 ~ 255之间 三、参考代码 private boolean isNetPort(int port) { boolean flag

    一、前言

    在进行网络编程时,端口或者IP的不正确会导致应用挂掉,通过以下方法可以对端口或者IP进行判断是否合法。

    二、解决思路

    1.端口判断

    端口的有效范围在 0 ~ 65535之间,写一个判断方法即可。

    2. IP判断

    这儿的IP指IPv4地址。
    a) IP地址长度判断
    b) 切割字符串,是否能够被分为四段
    c) 每段是否为数字
    d) 每个数字是否在0 ~ 255之间

    三、参考代码

        private boolean isNetPort(int port) {
            boolean flag = false;
            if (port >= 0 && port <= 65535) {
                flag = true;
            }
            return flag;
        }
    
        private boolean isIpAddr(String ipString) {
    
            // 判断是否是7-15位之间(0.0.0.0-255.255.255.255.255)
            if (ipString.length() < 7 || ipString.length() > 15) return  false;
    
            // 判断是否能以小数点分成四段
            String[] ipArray = ipString.split("\\.");
            if (ipArray.length != 4) return false;
            for (int i = 0; i < ipArray.length; i++) {
                try {
                    // 判断每段是否都是数字
                    int number = Integer.parseInt(ipArray[i]);
                    // 判断每段数字是否都在0-255之间
                    if (number < 0 || number > 255) return false;
                } catch (Exception e) {
                    return false;
                }
            }
            return true;
        }
    
    展开全文
  • IP地址就是给互联网上的每一台主机(或路由器)的每一个接口分配一个在全世界范围内是唯一的 32 位的标识符。注意,每个IP地址都是独一无二的,就像人的身份证号码一样。 而IP地址又分为A类、B类、C类、D类和E类...

    首先要铺垫一些基础知识,整个互联网就是一个单一的、抽象的网络。IP地址就是给互联网上的每一台主机(或路由器)的每一个接口分配一个在全世界范围内是唯一的 32 位的标识符。注意,每个IP地址都是独一无二的,就像人的身份证号码一样。
    而IP地址又分为A类、B类、C类、D类和E类地址,其中我们常用的是A、B、C三类,它们是单播地址(一对一通信),每一类地址都由两个固定长度的字段组成,其中第一个字段是网络号,它标志主机(或路由器)所连接到的网络。第二个字段是主机号,它标志该主机(或路由器)。
    对主机或路由器来说,IP地址都是32位的二进制代码。为了提高可读性,我们常常把32位的IP地址每个8位插入一个空格(但在机器中没有这样的空格,这样只是为了人们方便记忆),这样一个32位的IP地址就被分成了四个大段,每一段由8位为进制数表示,为了方便记忆(二进制数不好记),我们把这四段二进制分别转换成十进制数,并用点隔开,称其为点分十进制记法,举个例子
    (注:
    2^0=1
    2^1=2
    2^2=4
    2^3=8
    2^4=16
    2^5=32
    2^6=64
    2^7=128)
    这里写图片描述
    那么我们要解决的第一个问题就是,已知一个IP地址,如何区分它是A类地址还是B类或者C类地址呢?
    这里写图片描述
    A类地址
    1.0.0.0 到126.0.0.0
    0.0.0.0 和127.0.0.0保留
    B 类地址
    128.1.0.0到191.254.0.0
    128.0.0.0和191.255.0.0保留
    C 类地址
    192.0.1.0 到223.255.254.0
    192.0.0.0和223.255.255.0保留
    D 类地址
    224.0.0.0到239.255.255.255用于多点广播
    E 类地址
    240.0.0.0到255.255.255.254保留
    255.255.255.255用于广播
    地址分类是根据前8位二进制数转换成十进制后的范围划分的,因此我们只需看前八位就能判断了,举个例子,试判断以下IP地址的网络类别:
    (1)128.36.199.3 …B类
    (2)21.12.240.17 …A类
    (3)200.3.6.2 …C类
    学过计算机网络的同学注意了,如果告诉你一个带网络前缀的IP地址,那么你应该可以根据它推算出该地址的子网掩码,默认网关地址,默认广播地址,网络地址,受限广播地址,本机网络地址,以及如何平均划分子网空间。举个例子,已知分配给创新实验室的地址块中的一个地址为193.6.7.0/24,请回答下列问题:
    (1)该网络的网络前缀是多少?
    答案:24
    解析:193.6.7.0/24 加粗部分就是网络前缀
    (2)该网络的子网掩码是多少?
    答案:255.255.255.0
    解析:子网掩码是根据网络前缀推算的,255.255.255.0转换成二进制表示为11111111.11111111.11111111.00000000,网络前缀代表的是该地址的网络位,前面说到一个IP地址是由32位二进制数表示的,网络前缀为24就表示从左往右数前24位为该网络的网络位,剩下的后8位为该网络的主机位。而子网掩码就是网络位全为1,主机位全为0,比如说如果本题中给出的网络前缀变成26,意思就是该网络的子网掩码为11111111.11111111.11111111.11000000,换算成十进制数就是255.255.255.192
    (3)该网络的默认网关地址为多少?
    答案:193.6.7.254/24
    解析 :默认网关地址是主机位除最后一位全置1后得到的,根据网络前缀24可知前24位为网络位,后8位为主机位,因此该网络的默认网关地址就是IP地址193.6.7.11111110(加粗的部分为主机位),换算成十进制数即193.6.7.254/24(注意,但凡是跟IP地址格式一样的都要加网络前缀,跟子网掩码格式一样的就不用加),假如本题的网络前缀变成26,那么主机位就变成32-26=6位了,即默认网关地址为193.6.7.00 111110 =》193.6.7.62/26
    (4)该网络的默认广播地址是多少?
    答案:193.6.7.255/24
    解析:默认广播地址和默认网关地址可以一起记,因为默认广播地址就是主机位全为1,假如本题的网络前缀变成26,默认广播地址为193.6.7.00 111111 =》193.6.7.63/26
    (5)该网络的网络地址是多少?
    答案:193.6.7.0/24
    解析:网络地址是IP地址与子网掩码转换成二进制数再相与运算得来的结果,与运算的规则:1&1 = 1; 1&0 = 0; 0&1 = 0; 0&0 = 0,也就是说只有两者都为1时结果才为1。
    这里写图片描述
    (6)该网络的受限广播地址为多少?
    答案:255.255.255.255
    解析:所有网络的受限广播地址都是4个255
    (7)本主计所在的本机网络地址为多少?
    答案:0.0.0.0
    解析:所有本机网络地址都是4个0
    (8)如果将该网络平均划分为4个子网,请计算出这4个子网的地址空间
    答案
    193.6.7.0/26~193.6.7.63/26
    193.6.7.64/26~193.6.7.127/26
    193.6.7.128/26~193.6.7.191/26
    193.6.7.192/26~193.6.7.255/26
    解析
    这里写图片描述
    不管平均划分成几个子网,计算得到相应的节点之后便能划分出子网的地址空间,需要注意的是,每两个节点之间都是等间隔的,也就是说最后一段不一定是到255,而是根据间隔大小推算的,比如本题的网络前缀如果换成25,则答案变为:
    193.6.7.0/27~193.6.7.31/27
    193.6.7.32/27~193.6.7.63/27
    193.6.7.64/27~193.6.7.95/27
    193.6.7.96/27~193.6.7.127/27
    (9)这四个子网的有效地址空间是什么?
    答案
    193.6.7.1/26~193.6.7.62/26
    193.6.7.65/26~193.6.7.126/26
    193.6.7.129/26~193.6.7.190/26
    193.6.7.193/26~193.6.7.254/26
    解析:有效地址空间就是去掉主机位全为0和主机位全为1的地址,第一段中,193.6.7.00 000000和193.6.7.193.6.7.00 111111,因此去掉这两个地址。以此类推,后面三段中都去掉全0和全1的地址(左加右减)。
    基本上会算这些应该就能触类旁通了,如果你是通信工程或者计算机学院的学生,老年人给你的忠告就是,加油,路漫漫其修远兮。。。。。。(以后的坑还多着呢)

    展开全文
  • IP地址结构

    万次阅读 多人点赞 2018-05-16 23:55:29
    分类寻址(网络号+主机号) 在最初定义Internet地址结构时,每个单播IP地址都有一个网络部分,用于识别接口使用的IP地址在哪个网络中可被发现;以及一个主机地址,用于识别由网络部分给出的网络中的特定主机。因此,...

    分类寻址(网络号+主机号)

    在最初定义Internet地址结构时,每个单播IP地址都有一个网络部分,用于识别接口使用的IP地址在哪个网络中可被发现;以及一个主机地址,用于识别由网络部分给出的网络中的特定主机。因此,地址中的一些连续位称为网络号,其余连续位称为主机号。

    基于上述分类方法,IPv4地址按照网络号和主机号的长度被分为五大类。A、B、C类用于为Internet(单播地址)中的设备接口分配地址,以及其他特殊情况下使用。类由地址中的头几位来定义:0为A类,10为B类,110为C类,1110为D类,1111为E类。D类地址供组播使用,E类地址保留。分类如下图所示:


    由此可得出按此分类方式得到的IPv4地址空间划分:


    上述地址空间划分只是理论上的,而实际上有几个地址通常不作为单播地址使用,特别是地址块中的第一个和最后一个地址通常不使用。
    这种IP地址结构分类的特点与缺陷是显而易见的,例如A类地址的网络数少但主机数多,C类地址的网络数多而主机数少,这往往会造成一个网络号内的主机号无法完全分配,造成IP地址资源的利用率低下的问题。从而使IPv4的地址资源很快就出现了枯竭的趋势,寻找进一步细分IP地址的方法也就成为了必然。

    子网寻址(细分主机号)

    最初分类寻址的方法很难为接入Internet的新网段分配一个新的网络号,随着20世纪80年代初局域网(Local Area Network,LAN)的发展这一问题更为突出。为了解决这一问题,人们自然想到一种方式,在一个站点接入Internet后为其分配网络号,然后由站点管理员进一步划分本地的子网数。也即在初始的网络号+主机号的结构的基础上,将主机号划分为子网号+主机号,这样就可以在不改变核心路由基础的前提下细分网络。这种方法被称为子网寻址。
    子网寻址改变了最初一个IP地址的网络部分和主机部分的限制,但这样做只是针对一个站点自身而言,Internet的其余部分仍然只能看到传统的A~E的网络。从本质上来说,子网寻址为IP地址结构增加了一个额外部分,但它没有为地址增加长度。因此,一个站点管理员能在子网数和每个子网中预期的主机数之间灵活划分,不需要与其他站点协调。
    子网寻址提供这种灵活性的代价是增加成本。由于当前的子网字段和主机字段是由站点指定而不是由网络号分类决定,一个站点中所有路由器和主机需要一种新的方式来确定地址中的子网部分和其中的主机部分。在出现子网之前,这个信息可直接从一个网络号中获得,只需知道是A类、B类或C类地址。

    子网掩码

    子网掩码(subnet mask)是由一台主机或路由器使用的分配位,以确定如何从一台主机对应IP地址中获得网络和子网信息。IP子网掩码与对应的IP地址长度相同(IPv4为32位,IPv6为128位)。其格式如下:


    掩码由路由器和主机使用,以确定一个IP地址的网络/子网部分的结束和主机部分的开始。子网掩码中的一位设为1表示一个IP地址的对应位与一个地址的网络/子网部分的对应位相结合,并将结果作为转发数据报的基础。相反,子网掩码中的一位设为0表示一个IP地址的对应位作为主机号的一部分。如图所示


    一个IP地址与一个子网掩码按位与后就形成了用于路由的地址的网络/子网标识符(前缀),这是边界路由器需要的信息,以确定子网。Internet路由系统其余部分不需要识别子网掩码,因为站点之外的路由器做出路由决策只基于地址的网络号部分,并不需要网络/子网或主机部分。因此,子网掩码纯粹是站点内部的局部问题。

    可变长度子网掩码

    子网掩码的出现让网络划分的细粒度更高,提高了IP地址资源的利用率。将一个分配给站点的网络号进一步细分为多个可分配大小相同的子网,并根据网络管理员的合理要求使每个子网能支持相同数量的主机。这种方式在复杂的网络环境中,其IP地址资源还是会有不小的浪费。因此我们自然想到了放宽一个网络的子网掩码的限制,让其长度可变,即在同一站点的不同部分,将不同长度的子网掩码应用于相同网络号。虽然这样增加了地址配置管理的复杂性,但也提高了子网结构的灵活性,因为不同子网可以容纳不同数量的主机。这就是可变长度子网掩码(Variable Length Subnet Mask,VLSM),用于分割一个网络号,使每个子网支持不同数量的主机。VLSM可对子网进行层次化编址,使得多级子网成为可能,这种高级IP寻址技术允许网络管理员对已子网进行划分,以便最有效地利用现有的地址空间。


    无类别域间路由和路由聚合

    20世纪90年代初,在采用子网寻址缓解IPv4地址资源面临枯竭的危机后,Internet开始面临更严重的规模问题。主要体现在以下三个方面:
    ·到1994年,一半以上的B类地址已被分配。预计B类地址大约在1995年将被用尽
    ·32位的IPv4地址被认为不足以应付Internet在21世纪初的预期规模
    ·全球性路由表的条目数(每个网络号对应一条)随着子网的出现增长得更快,路由性能将受到影响
    IPv6被设想于解决第2个问题,而对于更为迫切的另外两个问题,无类别域间路由和路由聚合的概念应运而生。

    无类别域间路由

    为了帮助换件IPv4地址的压力,分类寻址方案通常使用一个类似VLSM的方案,扩展Internet路由系统以支持无类别域间路由(Classless InterDomain Routing,CIDR)。CIDR对原来用于分配A类、B类和C类地址的有类别路由选择进程进行了重新构建。CIDR用若干位长的前缀取代了原来IP地址结构中对网络部分的限制,这提供了一种方便的分配连续地址范围的方式。

    前缀

    使用CIDR,未经过预定义的任何地址范围可作为一个类的一部分,但需要一个类似于子网掩码的掩码,有时也称为CIDR掩码。CIDR掩码不再局限于一个站点,而对于全球性路由系统都是可见的。因此,除了网络号之外,核心Internet路由器必须能解释和处理这种掩码。这个数字组合称为网络前缀,它用于IPv4和IPv6地址管理。

    消除一个IP地址中网络号和主机号的预定义分隔,将使更细粒度的IP地址分配范围称为可能。与分类寻址类似,地址空间分割成块最容易通过数值连续的地址来实现,以便用于某种类型或某些特殊用途。一个n位的前缀是一个IP地址的前n个位的预定义值。对于IPv4,n(前缀长度)的值通常在范围0~32,对于IPv6则是0~128。它通常被追加到基本IP地址,并且后面跟着一个/字符。如图所示:


    采用前缀概念的另一个原因是,早期的分类寻址方案易于被这个方案覆盖。
    CIDR建立于“超级组网”的基础上,超级组网可看作是子网划分的逆过程。子网划分时,从IP地址的主机部分借位,将其合并至网络部分;而在超级组网中,则是将网络部分的某些位合并进主机部分。

    路由聚合

    通过取消分类结构的IP地址,能分配各种尺寸的IP地址块。但这样做只是进一步提高了IP地址的划分细粒度,而并没有减少路由表的条目数。路由聚合通过将相邻的多个IP前缀合并成一个短前缀(称为一个聚合或汇聚),可以覆盖更多地址空间。

    例如,三个IP地址:190.154.27.0/26,190.154.27.64/26,190.154.27.192/26,其二进制表示如下:


    190.154.27.0/26和190.15427.64/26的26位前缀中只有最后一位不同,因此这两个IP地址可以聚合为190.154.27.0/25。
    路由汇聚提高了路由选择的效率,降低了对路由器内存的要求(路由表条目数减少),且当重新计算路由表或检索路由表条目,即对路由表进行分析以找出前往目标IP地址的路径时,降低了所需的CPU周期(也就是时间)。

    IP地址从最初的分类寻址方式逐渐改进,增加了子网掩码,再到对有类别的路由进行重新构建,放弃了早期的有类别路由,改用无类别域间路由,都是为了更有效地利用IP地址资源。这些技术虽然大部分是为了应对IPv4地址资源不足而提出的,但对于IPv6也同样适用。这一系列技术使得IPv4的生存时间延长,但其32位的地址空间只能分配约43亿个IP地址,随着物联网等概念的兴起,接入Internet的设备将不仅仅只局限于传统意义上的计算机,且数量将大幅增加。因此IPv6的提出才是从根本上解决IP地址资源短缺的方案。

    本文摘自《TCP/IP详解 卷1:协议(中文版)第2版》、百度百科,有改动

    展开全文
  • IP地址和路由

    千次阅读 2019-08-18 16:47:10
    IP地址和路由 IPv4地址 IP地址 IP地址是逻辑上的地址,可人为分配,具有可管理性 IP地址可唯一标识 IP 网络中的每台设备 每台主机(计算机、网络设备、外围设备)必须具有唯一的地址 IP地址由两部分组成 ①...

    IP地址和路由

    IPv4地址

    IP地址

    • IP地址是逻辑上的地址,可人为分配,具有可管理性

    • IP地址可唯一标识 IP 网络中的每台设备

    • 每台主机(计算机、网络设备、外围设备)必须具有唯一的地址

    • IP地址由两部分组成
      ①网络ID
         标识网络
         每个网段分配一个网络ID
      ②主机ID
         标识单个主机
         由组织分配给各设备

    • IPv4地址格式:点分十进制

    IP地址分类

    • A类:
      0 000 0000 - 0 111 1111: 1-127
      网络数:126, 127
      每个网络中的主机数:2^24-2
      默认子网掩码:255.0.0.0
      私网地址:10.0.0.0

    • B类:
      10 00 0000 - 10 11 1111:128-191
      网络数:2^14
      每个网络中的主机数:2^16-2
      默认子网掩码:255.255.0.0
      私网地址:172.16.0.0-172.31.0.0

    • C类:
      110 0 0000 - 110 1 1111: 192-223
      网络数:2^21
      每个网络中的主机数:2^8-2
      默认子网掩码:255.255.255.0
      私网地址:192.168.0.0-192.168.255.0

    • D类:组播
      1110 0000 - 1110 1111: 224-239

    • E类:保留未使用
      240-255

    • 注:ABC类地址由于分类时主机数目差距特别庞大,不太适应于实际场景,因此目前一般采取不分类使用。(eg:2000台,每台主机分配一个地址,但根据ABC类地址分配地址就不符合应用场景)

    • 公共IP地址

    • 私有IP地址

    • 特殊地址
      ①0.0.0.0
         0.0.0.0不是一个真正意义上的IP地址。它表示所有不清楚的主机和目的网络
      ②255.255.255.255
         限制广播地址。对本机来说,这个地址指本网段内(同一广播域)的所有主机
      ③127.0.0.1~127.255.255.254
         本机回环地址,主要用于测试。在传输介质上永远不应该出现目的地址为“127.0.0.1”的 数据包
      ④224.0.0.0到239.255.255.255
         组播地址,224.0.0.1特指所有主机,224.0.0.2特指所有路由器。224.0.0.5指OSPF 路由器,地址多用于一些特定的程序以及多媒体程序
      ⑤169.254.x.x
         如果Windows主机使用了DHCP自动分配IP地址,而又无法从DHCP服务器获取地址,系统会为主机分配这样地址

    子网掩码

    • 目前打破了ABC的分类方式,根据特定场景划分主机ID和网络ID,因此引入子网掩码,以便区分主机ID和网络ID。

    • 子网掩码:32bit二进制数字,用于区分主机ID和网络ID。

    • 对应于网络ID的位为1,对应于主机ID的位为0

    • 子网掩码的八位

      即可能成为掩码的十进制数字
      00000000 0
      10000000 128
      11000000 192
      11100000 224
      11110000 240
      11111000 248
      11111100 252
      11111110 254
      11111111 255

    • 可变长度子网掩码,根据需求划分网络ID和主机ID eg:IP/21,IP/22

    如何判断两个主机在同一网段?

    • 两个主机在同一网段:主机ID位数相同,需要根据掩码判断主机位数

    • 判断方法:IP与子网掩码相与,得出网络ID
      注意:二进制相与)

    eg:192.168.38.7/24
    网段:192.168.38.0

    两个主机通信?

    • 两个主机通信:
      ①首先知道对方IP
      ②判断对方和自己是否属于同一网段
         同一网段:arp广播
         不同网段:找网关,若没有配置网关,则对方网络不可达。

    • 判断目标主机与自己是否在同一网段?

    • 注意:通信时是用自己的子网掩码与对方ip相与,因为通信时不知道对方子网掩码

    • eg:主机A与主机B的IP地址如下,请问A与B通信机制?
      A:192.168.38.100/25
      B:192.168.38.200/24
      此时子网掩码不一样的情况下:分别单独分析:
         ① A --> B (以A的子网掩码为基准)
         NETMASK:255.255.255.128
         192.168.38.0110 0100 & 255.255.255.1000 0000=192.168.38.0
         192.168.38.1100 1000 & 255.255.255.1000 0000=192.168.38.128
         ip-A 与 ip-B分别与A主机子网掩码相与,不相同,则不在同一网段


         ② B --> A(以B的子网掩码为基准)
         NETMASK:255.255.255.128
         192.168.38.0110 0100 & 255.255.255.0000 0000=192.168.38.0
         192.168.38.1100 1000 & 255.255.255.0000 0000=192.168.38.0
         ip-A 与 ip-B分别与B主机子网掩码相与,相同,则在同一网段

    IP地址范围

    • glob:全局有效
    • link:只针对ip网卡所在链路有效
    • host:只有在本机访问有效,其他主机访问无效

    配置主机IP时应该结合物理实际和逻辑

    • 场景一
    • 场景二
    • 逻辑上和物理上统一配置网络比较符合

    划分子网

    • 划分子网:将一个大网(主机数较多)分成多个小网(主机数较少)

    • 实现:网络ID向主机ID借位

    • 网络ID必须为高位,主机ID必须为低位

    • 举例:
      10.0.0.0/8(划分子网)
      网络ID:8位
      主机ID:24位
      表示IP范围:10.0.0.1–10.255.255.254


      ①网络ID向主机ID借1位
      10.0000 0000.0.0/9 — 10.0.0.0/9
      10.0 0000000.0.0/9 — 10.0.0.0/9
      10.1 0000000.0.0/9 — 10.128.0.0/9
      (借1位时有0或1两种状态) 因此划分出2个子网


      ①网络ID向主机ID借2位
      10.0000 0000.0.0/10 — 10.0.0.0/10
      10.00 000000.0.0/10 — 10.0.0.0/10
      10.01 000000.0.0/10 — 10.64.0.0/10
      10.10 000000.0.0/10 — 10.128.0.0/10
      10.11 000000.0.0/10 — 10.192.0.0/10
      (借2位时具有:00 01 10 11) 因此划分出4个子网

      (以此类推)

    • 例题:将10.0.0.0/8划分32个子网
      1、子网的子网掩码?
      2、最小的子网的网络ID?
      3、最大的子网的网络ID?
      4、第10个子网的IP范围?
      解:32=2^5,因此网络ID需要向主机ID借5位,则子网一共13位
      10.00000 000.0.0/13
      1、子网的子网掩码:255.11111000.0.0=255.248.0.0
      2、最小的子网的网络ID:10.0.0.0/13
      3、最大的子网的网络ID:10.248.0.0/13
      4、第10个子网的IP范围:10.72.0.1~10.72.255.254

    • 合并超网:将多个小网合并成一个大网,主机id向网络id借位
      合并超网作用:合并超网可以节约路由器的路由记录,即节约路由器的存储空间

      eg:上图这些IP合并超网时:
      220.78.10101 000.0
      220.78.10101 001.0

      220.78.10101 111.0
      主机id向网络id借3位满足网络id保持不变~因此此时路由记录将上图中的多条改为:220.78.168.0/21 即子网掩码为255.255.168.0

    • 还有可能出现以下场景:
      ①有时也设置30为的网络ID,剩下2主机IP
      ②在回环网卡上指定32网络ID,指定ip的情况。回环网卡指定ip不会因为物理网卡down导致ip丢失。

    路由

    路由简介

    • 路由主要的功能实现跨网络通信
    • 路由分类:
      主机路由:描述网络中某主机怎么到达
      网络路由:描述主机所在网络怎么到达,到达网络之后在ARP广播
      默认路由:指明走的方向就能到达
        访问时可能三种路由都知道,由优先级决定
    • 路由的优先级:精度越高,优先级越高

    路由表

    • 路由器、主机中都有路由表,路由表有路由记录组成

    • 有路由表主机与不在同一网段的主机通信才能出去

    • 注: 路由是核心,网关是形式

    • 路由记录的组成:
      ①网络ID:目标主机所在网络id/子网掩码 (其中可以是主机ip,网络id,默认路由)
      ②接口(interface):本路由器要到达对应的网络所发送的本地接口(即路由器到达对应网络应该从哪一个接口转发)
      ③网关(gateway):要到达目标网络,需要发送到下一个路由器的接口ip(即目标主机不是与本机路由器直接相连的链路时,应该要转发至去目标主机且与本机当相邻的路由—>每个路由只负责与自己直连的链路和转发)
      ④meric:数字越小优先级越高(当有多条路径可供选择时)

    • 查看当前主机路由表信息:


      ①与路由表中没有记录的主机通信时,走默认路由,默认路由(0.0.0.0)-可以去任何网段(而且系统默认路由的优先级最低)
      ②默认路由是由网关生成的,(配置文件不配置网关就不会生成默认路由)

    • 路由记录的描述

      如上图加入A与B通信,路由器1(R1)和路由器2(R2)的路由记录图表

    路由表的生成

    ①静态路由:手动一条一条添加;(小环境)
    ②动态路由:通过守护进程获取动态路由
    路由表的自动生成:路由协议 利用软件实现
    RIP(学习使用,走的路径越少,越好)
    OSPF(中小型企业使用,考虑带宽)
    BGP(大型企业使用)
      quagga:软件包
      命令vtysh配置

    路由相关命令和配置文件

    • ip route:- routing table management
      ①删除路由:ip route del TARGET
      ②显示路由:ip route show|list
      ③添加网关:ip route add default via GW dev IFACE
      ④清空路由表:ip route flush [dev IFACE] [via PREFIX]
             ip route flush dev eth0

    • route命令
      ①默认路由,网关:172.16.0.1
         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
         route del [-net|-host] target [gw Gw] [netmask Nm] [[dev] If]
      ③目标:192.168.1.3 网关:172.16.0.1
         route del -host 192.168.1.3
      ④目标:192.168.0.0 网关:172.16.0.1
         route del -net 192.168.0.0 netmask 255.255.255.0
      ⑤显示:route / route -n

    • 路由相关的配置文件:
      /etc/sysconfig/network-scripts/route-IFACE
      /etc/sysconfig/network-scripts/ifcfg-IFACE(需要手动创建)
      • 注意:需service network restart生效
      • 两种风格:(一般建议采用第一种风格)
      (1) TARGET via GW
      如:10.0.0.0/8 via 172.16.0.1
      (2) 每三行定义一条路由
      ADDRESS#=TARGET
      NETMASK#=mask
      GATEWAY#=GW

    实验

    • 主机A和主机B通信,其中路由器使用Linux模拟,各阶段配置如下
    • 实验总结:
      ①因为我在A主机没有配置默认网关(即没有默认路由),也并未配置路由记录去192.168.6.0/24网段
      在A主机添加的路由记录:(没有指明去192.168.6.0/24网段的路由记录,然后其A主机 ping B主机 )
      route add -net 192.168.38.0/24 gw 172.18.4.27/24
      造成现象:
      a、图中其他IP均能ping通除了A ping B;和B ping A
      b、当A主机去pingB主机时:报文只能到达192.168.38.0/24网段;
      c、当B主机去ping A主机时:A的响应报文也只能到达192.168.38.0/24网段;
      ②错误分析:此时172.18.0.0/16网段要抵达192.168.6.0/24 需要经192.168.38.0/24这个网段,但是添加的路由记录并不能抵达至192.168.6.0/24网段,受到路由的限制,报文在抵达192.168.38.0/24网段时就不进行转发了。
      ③错误原因:因为没有指明去192.168.6.0/24的路由记录。
      ④路由是指明方向,方向很重要╮(╯▽╰)╭
    展开全文
  • IP地址、子网掩码、有效子网数、有效主机数

    千次阅读 多人点赞 2017-08-27 12:14:45
    简要介绍IP地址、子网掩码、主机数、子网广播地址等关系。
  • GitLab换了IP地址,更换对应项目的git地址 最近楼主的局域网的gitlab的Ip换了,但是我的项目的IP依然没有换掉,这就很难受了。 问题描述 例如你的局域网访问到的gitlab更换后的地址是:...
  • 因为树莓派有千兆网口所以需要将三个树莓派的IP地址配在同一网段下。所以需要改变其地址。 和电脑版的Ubuntu系统不同,树莓派下不好实现界面设置。Ubuntu下只需要点开网络图标,再最下面的编辑链接中重新编辑有线...
  • IP地址详细介绍

    千次阅读 热门讨论 2017-11-20 17:42:25
    说起IP地址大家都不陌生,可是你真的了解它吗?下面我们一起来看看。IP地址IP地址是指互联网协议地址(英语:Internet Protocol Address,又译为网际协议地址),是IP Address的缩写。IP地址是IP协议提供的一种统一...
  • 获取客户端ip地址,并通过ip地址判断客户属于哪个国家或地区
  • 子网掩码是用来判断任意两台计算机的IP地址是否属于同一子网络的根据。 最为简单的理解就是两台计算机各自的IP地址与子网掩码进行AND运算后,如果得出的结果是相同的,则说明这两台计算机是处于同一个子网络上的,...
  • 获取代理IP地址

    万次阅读 2018-06-29 10:36:42
    很多时候,需要用到代理IP。比如在开发爬虫程序的时候,为了反爬,需要使用...从指定的网站抓取代理IP地址并存入数据库all_ip_table中,当前抓取的地址包括: 西刺网站 快代理网站 66代理网站 89代理网站 秘密代理...
  • 如何配置Linux系统的IP地址

    万次阅读 多人点赞 2017-03-20 08:28:08
    如何配置Linux系统的IP地址,使其能够连接局域网甚至外网。其实这并不难,Linux系统网络配置的方法有多种。下面,以VMware虚拟机中的Linux系统为例,进行讲解。我的真实机是Windows系统,网络连接的详细信息如下:已...
  • IP地址详解,网络分段

    千次阅读 2019-03-22 14:47:57
    IP地址 IP地址是什么? 百度百科:IP是英文Internet Protocol的缩写,意思是“网络之间互连的协议”,也就是为计算机网络相互连接进行通信而设计的协议。在因特网中,它是能使连接到网上的所有计算机网络实现相互...
  • ip地址正确,redis却始终连接失败

    千次阅读 2018-08-09 15:16:20
    但是测试发过来他在本地部署项目修改的配置IP端口都是正确的,远程也能ping通。  之前没遇到过这种问题,后来发现他是连接的本机的redis的服务,而没有修改的Redis的默认绑定。  Redis的默认绑定的IP为127.0.0.1...
  • IP地址的表示方法

    千次阅读 2019-08-07 16:15:27
    我们平常所说的IP地址都是指类似于 192.168.0.37 这样的一串数字,但实际上这一串数字只是IP地址主体而已。 IP地址主体 一串32比特的数字,按照8比特(1个字节)为一组分成4组,每组都用十进制值表示,最后以英文...
  • //[转]JAVA取本机ip地址正确方法,ipv6有效 //除普通环境,还能适用于多网卡的、Linux环境 import java.net.Inet6Address; import java.net.InetAddress; import java.net.NetworkInterface; import java.util....
  • 运营商网络IP地址分配原则

    千次阅读 2019-09-25 15:52:26
    相关文章:你的宽带被运营商偷偷分配了内网IP怎么办?! 不过也可能有人不知道自己到底是不是被... 2、比对IP地址是否为内网IP地址,以下范围内的IP地址属于内网保留地址,即不是公网IP,而是属于内网IP: 10.0...
  • Ceph集群更改IP地址

    千次阅读 2019-04-11 10:12:21
    由于一些原因,有时需要将Ceph集群的IP地址进行更改,以下为更改Ceph集群IP地址的步骤: 1.更改各机器IP地址 2.更改每台机器/etc/hosts文件中的ip地址 3.更改ceph.conf文件中的ip地址,并且同步至集群中的所有...
  • IP地址漂移技术

    千次阅读 2016-03-10 16:05:00
    IP地址漂移技术 关于IP地址漂移,我所找到的关于其描述如下: 由于通常情况下,两台服务器都具有一块以上的网卡,每块网卡都应该有一个IP地址,同时,还应该有一个漂移IP地址,该地址为工作IP地址。因此,最简单的...
  • 了解IP地址及如何设置IP地址

    千次阅读 2007-05-10 19:57:00
    众所周知,在电话通讯中,电话用户是靠电话号码... 什么是IP地址 所谓IP地址就是给每个连接在Internet上的主机分配的一个32bit地址。 按照TCP/IP(Transport Control Protocol/Internet Protocol,传输控制协议/Int
  • IP地址的规划和设计方法(一)

    万次阅读 2015-07-31 10:13:47
    一,IP地址的概念和划分地址新技术的研究  (1)标准分类的IP地址  第一阶段是在IPv4协议制定的初期,时间大致在1981年左右。那时候网络的规模比较小,用户一般是通过终端, 经过大型计算机或中小型计算机接入...
  • IP 别名和辅助 IP 地址

    千次阅读 2017-01-25 12:05:13
    概述IP 别名(IP Alias),辅助ip地址(Secondary IP Address)
  • 识别有效IP地址和掩码并进行分类

    千次阅读 2017-07-08 16:39:39
    请解析IP地址和对应的掩码,进行分类识别。要求按照A/B/C/D/E类地址归类,不合法的地址和掩码单独归类。所有的IP地址划分为 A,B,C,D,E五类: A类地址1.0.0.0~126.255.255.255; B类地址128.0.0.0~191.255.255....
  • 如何计算IP地址

    千次阅读 2015-07-02 09:40:22
    一、 IP地址概念 IP地址是一个32位的二进制数,它由网络ID和主机ID两部份组成,用来在网络中唯一的标识的一台计算机。网络ID用来标识计算机所处的网段;主机ID用来标识计算机在网段中的位置。IP地址通常用4组3位...
  • IP地址与MAC地址

    千次阅读 2012-10-17 20:55:19
    1.多播时需要特定的MAC地址,因为在以太网中的2层及以下是不识别IP地址的,只认MAC,所以不需转换成MAC地址 2.一个多播(组播)对应一个MAC,网卡的地址虽然固定,但是,它可以监听到任何MAC的通讯,只要它连接的...
  • IP地址&端口号&TCP协议&UDP协议

    千次阅读 2018-05-11 13:38:40
    一、IP地址 1.什么是IP地址IP地址是连接在因特网上的主机的标识符 2.IP协议的分类? IP协议有两个版本,分别是IPV4,IPV6 ps:基本上提到IP地址时,不特指的话,都是指IPV4 3.IP地址的大小、格式、分类? ...
  • 正则表达 /b单词边缘 /B非单词边缘 在shell中如何判断字符...近来需要写个小shell判断用户输入的字符串是否为有效ip地址,简单排除了以下几种情况: 1. 以点号为分隔的域不等于4或6; 2. 出现字符; 3. 某域以...
  • 我们知道在互联网上,如果想要被其他终端访问,就需要给每台主机(或路由器)的每一个接口分配一个在全世界范围内是唯一的标识符,这就是我们所说的唯一的IP地址。IP协议就是使用这个地址在主机之间传递信息,这是...
  • 电脑更改IP地址后,Oracle数据库需要重新配置IP问题(一招搞定,永久有效
  • 前几天,研究了一下TP中IP地址定位,着实费了一些时间,现在解决了,分享给大家。IP地址库有点大,去这里下载http://download.csdn.net/detail/man_quan/4636418用于IP地址的定位,解压后的类库文件放入ThinkPHP/...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 270,048
精华内容 108,019
关键字:

以下属于正确的ip地址的是