IP地址由网络号和主机号两部分组成,网络号的最高位必须是“0”,IP地址和子网掩码求“与”算出网络地址,只有网络地址相同才可直接通信,否则需要借助路由。
主机标识段为全1的IP地址为广播地址, 广播数据包不经过路由器,只能在同一子网内部广播,UDP的广播地址为255.255.255.255。
子网中第一个地址为网络地址,最后一个地址为广播地址,这两个地址是不能配置在计算机主机上。根据网络号的不同,IP地址划分为ABCED五类。

子网掩码为何叫“掩码”?因为它能遮掩(同IP地址求与)IP地址的主机号部分,从而得到网络号(或网络地址)。

1) 以
inet 10.49.126.98  netmask 255.255.255.192  broadcast 10.49.126.127
为例:

10.49.126.98的二进制:
00001010.00110001.01111110.01100010

255.255.255.192的二进制:
11111111.11111111.11111111.11000000

10.49.126.98的网络地址为与子网掩码255.255.255.192的“与”:
00001010.00110001.01111110.01000000
即:
10.49.126.64

“10.49.126.64”即为网络地址,该子网可有多少主机?
“00001010.00110001.01111110.01000000”最后一个1后的0为主机部分,这里一共6个0,即2的6次方,值为64,减去网络地址和广播地址,所以可用主机数为62个。

2) 以
inet 10.223.25.101  netmask 255.255.255.192  broadcast 10.223.25.127
为例:

10.223.25.101的二进制:
00001010.00110001.01111110.01100101

10.223.25.101的网络地址为与子网掩码255.255.255.192的“与”:
00001010.00110001.01111110.01000000
即:
10.49.126.64

因此10.223.25.101和10.49.126.98可直接通信。

3) 以
inet 9.25.130.171  netmask 255.255.255.192  broadcast 9.25.130.191
为例:

9.25.130.171的二进制:
00001001.00011001.10000010.10101011
9.25.130.171的网络地址为与子网掩码255.255.255.192的“与”:
00001001.00011001.10000010.10000000
即:
9.25.130.128

因此9.25.130.171和10.49.126.98不可直接通信,需要添加路由。

主机地址10.240.85.2/16中的数字16为子网掩码的缩写(CISCO表示法),16代表16个1,即:11111111.11111111.00000000.00000000,因此16就是255.255.0.0。

inet 10.240.85.2  netmask 255.255.255.192  broadcast 10.240.85.63
10.240.85.2     => 00001010.11110000.01010101.00000010
255.255.255.192 => 11111111.11111111.11111111.11000000
网段:
00001010.11110000.01010101.00000000
即:
10.240.85.0

故可表示为:
10.240.85.0/26

问题1:192.168.1.0/26和192.168.1.64/26是否可直接通信?
26           => 11111111.11111111.11111111.11000000
192.168.1.0  => 11000000.10101000.00000001.00000000
192.168.1.64 => 11000000.10101000.00000001.01000000

192.168.1.0的网段为:
11000000.10101000.00000001.00000000
即:
192.168.1.0

192.168.1.64的网段为:
11000000.10101000.00000001.01000000
即:
192.168.1.64

两个的网段不同,故不能直接通信。

问题2:192.168.1.0/26可容纳多少个IP?
26等于11111111.11111111.11111111.11000000,那么剩下的只有111111(6个1),十进制值为63,因此192.168.1.0/26可容纳64个IP(包含一个网段地址和一个广播地址)。

题1:对于C类地址,子网掩码为255.255.255.248,则能提供的子网数为多少?
248的二进制值为11111000,而二进制值11111的十进制值为31,因此可提供的子网数为30个。

题2:某公司申请到一个C类地址,但要连接6个子公司,最大的一个子公司有26台电脑,每个子公司在一个网段中,则子网掩码应设为多少?
26的二进制值为11010,因此网络掩码为:11111111.11111111.11111111.11100000,即255.255.255.224。

题3:地址190.233.27.13/16的网络部分地址是什么?
190.233.27.13 => 10111110.11101001.00011011.00001101
16            => 11111111.11111111.00000000.00000000

190.233.27.13和16求“与”得到:
10111110.11101001.00000000.00000000
即网络部分地址是190.233.0.0。

题4:一个子网网段地址为5.32.0.0,掩码为255.224.0.0的网络,它允许最大的地址是?
255.224.0.0 => 11111111.11100000.00000000.00000000
5.32.0.0    => 00000101.00100000.00000000.00000000

该网段的广播地址(同255.224.0.0求“与”后的值为5.32.0.0):
00000101.00111111.11111111.11111111
即:
5.63.255.255
因此最大IP地址为5.63.255.254

题5:一个C类地址192.168.5.0,进行子网规划,要求每个子网有10台主机,怎样设置子网掩码?
192.168.5.0 => 11000000.10101000.00000101.00000000
10 => 1010
那么子网掩码可设置为:
11111111.11111111.11111111.11110000
即255.255.255.240

附1:查看路由表命令
ip route

route -n

附2:iptables的简单应用

可以修改/etc/rc.d/boot.local让规则重启后也能生效,如:
/sbin/iptables -F
/sbin/iptables -A INPUT -i eth0 -p tcp --sport 80 -j ACCEPT
/sbin/iptables -A INPUT -i eth0 -p tcp -j DROP
/sbin/iptables -A INPUT -i eth0 -p udp -j DROP

iptables是一个链的方式从前往后判断,如果前面的规则成立就不会往后继续,所以要注意顺序,一般每行对应一条规则。
-A是Append意思,也就是追加
-I是Insert意思,也就是插入

-F表示清除(即删除)掉已有规则,也就是清空。
查看已有的规则,执行命令:iptables -L -n
如(参数-L为list意思,-n表示以数字方式显示IP和端口,不指定-n则显示为名称,如:http即80端口):
# iptables -L -n
Chain INPUT (policy ACCEPT)
target     prot opt source               destination         
ACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0            tcp spt:443
ACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0            tcp spt:80
DROP       tcp  --  0.0.0.0/0            0.0.0.0/0           
DROP       udp  --  0.0.0.0/0            0.0.0.0/0

Chain FORWARD (policy ACCEPT)
target     prot opt source               destination

Chain OUTPUT (policy ACCEPT)
target     prot opt source               destination

从可以看到:iptables有三种规则链(Chain),即INPUT、OUTPUT和FORWARD。
INPUT 用于指定输入规则,比如外部是可以访问本机的80端口
OUTPUT 用于指定输出规则,比如本机是否可以访问外部的80端口
FORWARD 用于指定端口转发规则(相当于rinetd功能),比如将8080端口的数据转到到80端口

-I和-A需要指定链(Chain)名,其中-I的链名后还需要指定第几条(行)规则。
可通过-D参数删除规则,有两种删除方式,一是匹配模式,二是指定第几条(行)。
也可以通过-R参数修改已有规则,另外-L参数后也可以跟链(Chain)名,表示只列出指定链的所有规则。
-j参数后跟的是动作,即满足规则时执行的操作,可以为ACCEPT、DROP、REJECT和REDIRECT等。

在iptables的INPUT链的第一行插入一条规则(可访问其它机器的80端口):
iptables -I INPUT 1 -p tcp --sport 80 -j ACCEPT

在iptables的INPUT链尾追加一条规则(可访问其它机器的80端口):
iptables -A INPUT -p tcp --sport 80 -j ACCEPT

如果要让其它机器可以访问本机的80端口,则为:
iptables -A INPUT -p tcp --dport 80 -j ACCEPT

插入前:
# iptables -L -n
Chain INPUT (policy ACCEPT)
target     prot opt source               destination         
DROP       tcp  --  0.0.0.0/0            0.0.0.0/0           
DROP       udp  --  0.0.0.0/0            0.0.0.0/0

插入:
# iptables -I INPUT 1 -p tcp --sport 80 -j ACCEPT

插入后:
# iptables -L -n
Chain INPUT (policy ACCEPT)
target     prot opt source               destination         
ACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0            tcp spt:80
DROP       tcp  --  0.0.0.0/0            0.0.0.0/0           
DROP       udp  --  0.0.0.0/0            0.0.0.0/0

追加前:
# iptables -L -n
Chain INPUT (policy ACCEPT)
target     prot opt source               destination         
DROP       tcp  --  0.0.0.0/0            0.0.0.0/0           
DROP       udp  --  0.0.0.0/0            0.0.0.0/0

追加:
# iptables -I INPUT 1 -p tcp --sport 80 -j ACCEPT

追加后(ACCEPT将不能生效):
# iptables -L -n
Chain INPUT (policy ACCEPT)
target     prot opt source               destination         
DROP       tcp  --  0.0.0.0/0            0.0.0.0/0           
DROP       udp  --  0.0.0.0/0            0.0.0.0/0 
ACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0            tcp spt:80

删除INPUT的第3条规则:
iptables -D INPUT 3

转载于:https://www.cnblogs.com/aquester/p/9891467.html

IP和网段及子网掩码基础知识相关推荐

  1. IP、Route相关命令基础知识

    1.基础知识 1.1 路由 (Routing) 1.1.1 路由策略 (使用 ip rule 命令操作路由策略数据库) 基于策略的路由比传统路由在功能上更强大,使用更灵活,它使网络管理员不仅能够根据目 ...

  2. 《图解TCP/IP》——第一章 网络基础知识

  3. 记录Windows 的一些基础知识(包括基础命令,文件系统,注册表项)

    Windows基础命令 ## windows输入命令```powershell win+R 打开cmd 右键管理员运行 目录和文件操作 目录分为相对路径和绝对路径 相对路径(以当前为起点) " ...

  4. FTP基础知识及排障方法

    FTP基础知识及排障方法<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" / ...

  5. 表格计算机考试基础知识及重点试题,人社厅计算机考试题库-计算机等级考试一级的资料今年大一期末考试会考相关的试题请问大家有 爱问知识人...

    全国计算机等级考试→一级WINDOWS笔试试题及答案(2001年9月) 一.选择题((1)-(30)每小题1分,(31)-(55)每小题2分,共80分) 下列各题A) .B).C).D)四个选项中,只 ...

  6. 【网路编程】网络基础知识(IP、子网掩码、网关等)概念概述

    目录 一.IP 二.子网掩码 三.网关 四.默认网关(缺省网关.路由器.缺省路由器) 五.总结(IP.子网掩码.网关): 六.DNS服务器 七.DHCP服务器 八.MAC地址 九.服务器 十.端口号 ...

  7. 详解网络基础知识:IP地址、子网掩码、网关

    前言:ip地址,网关,子网掩码都是it行业比较常见对象.但凡是需要联网的或者说使用网络主机的都必须有会配置网络,而配置网络肯定少不了ip地址,网关,子网掩码进行通信!那么你知道他们指的是什么吗,又有什 ...

  8. 计算机网络基础:IP基础知识笔记

    1. IP地址概念 IP是用来唯一标识主机地址. IP地址 = 网络地址 + 主机地址(又称:主机号和网络号组成) 例如IP:192.168.100.168 子网掩码 255.255.255.0 对应 ...

  9. IP 基础知识“全家桶”,45 张图一套带走!

    转载自: https://mp.weixin.qq.com/s/kPjFeefB1Xsbc2bHz_Or1Q 前言 前段时间,有读者希望我写一篇关于 IP 分类地址.子网划分等的文章,他反馈常常混淆, ...

最新文章

  1. windows常用命令有哪些(整理)
  2. 移动端开发问题及技巧汇总
  3. Linux命令在线查询
  4. 常用并发工具类(线程池)
  5. SCI、Ei投稿指南
  6. 幸福框架:模式驱动开发
  7. [转载]在ASP.NET MVC中,使用Bundle来打包压缩js和css
  8. ip地址合法性检查 php,php检查验证IP为有效IP地址函数
  9. SQL模糊查询特殊符号应用及详细案例说明
  10. 手机、桌面和浏览器应用程序开发的差异
  11. 【读书笔记《Android游戏编程之从零开始》】4.Android 游戏开发常用的系统控件(EditText、CheckBox、Radiobutton)
  12. win10系统怎么改奇摩输入法_Win10系统如何切换输入法
  13. 电脑播放SACD-ISO/DSD/DFF音乐
  14. Excel表格将多个单元格内容合并到一个单元格中_工作中使用记录_2021-03-29
  15. 更改Ansys Workbench的语言的方法
  16. 国美易卡的标识符和关键字是什么(国美易卡)
  17. 关于高通8953修改动态logo bootanimation不起作用问题
  18. 语法和语义之间的差异_语法和语义之间的区别
  19. 30行Python代码实现蚂蚁森林自动偷能量
  20. PPT如何锁定一些元素(使用母版的策略)

热门文章

  1. 将数据传回前端_惠普打印机被发现偷偷回传数据:隐藏极深
  2. 华为ac控制器web配置手册_欧姆龙AC伺服系统1S系列产品型号说明及功能介绍
  3. 苹果CMSV10橙色自适应25影视网主题模板
  4. 人生重开模拟器微信小程序源码
  5. 忧心文案小程序第二版前端后端源码
  6. 左右黑白极简滚动个人主页模板
  7. 如何用java实现加减_用Java实现不用加减乘除做加法操作
  8. matlab实现photoshop,photoshop图像滤镜——素描算法(含matlab代码)
  9. 极致cms1:1精仿资源哟源码
  10. datatable使用groupby进行分组统计 .