网络基础四 DNS DHCP 路由 FTP

Windows系统学习笔记总结(自总结带目录) 目录 Windows - 3 - 第一讲 VMware - 3 - 1.1安装VMware - 3 - 第二讲 网络 - 5 - 2.1网络知识 - 5 - 第三讲 端口 - 7 - 3.1端口 - 7 - 第四讲 权限和共享 - 8 - 4.1权限设置 - 8 - 4.2数据共享 - 9 - 第五讲 磁盘 - 10 - 5.1磁盘 - 10 - 5.... 阅读详情

第1章 网络基础

1.1 IP地址分类

    IP地址的类别-按IP地址数值范围划分

    IP地址的类别-按IP地址用途分类

    IP地址的类别-按网络通信方式划分

1.2 局域网上网原理过程

    DHCP原理过程详情。

    http://blog.oldboyedu.com/autoinstall-kickstart/

    http://www.zyops.com/dhcp-working-procedure

DHCP(Dynamic Host Configuration Protocol,动态主机配置协议)通常被应用在大型的局域网络环境中,主要作用是集中的管理、分配IP地址,使网络环境中的主机动态的获得IP地址、网关地址、DNS服务器地址等信息,并能够提升地址的使用率。

1.3 DHCP服务原理

1.3.1 DHCP服务器IP分配方式

 

DHCP服务器提供三种IP分配方式:

l 自动分配(Automatic Allocation)

自动分配是当DHCP客户端第一次成功地从DHCP服务器端分配到一个IP地址之后,就永远使用这个地址。

l 动态分配(Dynamic Allocation)

动态分配是当DHCP客户端第一次从DHCP服务器分配到IP地址后,并非永久地使用该地址,每次使用完后,DHCP客户端就得释放这个IP地址,以给其他客户端使用。

l 手动分配

手动分配是由DHCP服务器管理员专门为客户端指定IP地址。

1.3.2 DHCP服务工作流程

DHCP客户机在启动时,会搜寻网络中是否存在DHCP服务器。如果找到,则给DHCP服务器发送一个请求。DHCP服务器接到请求后,为DHCP客户机选择TCP/IP配置的参数,并把这些参数发送给客户端。 如果已配置冲突检测设置,则DHCP服务器在将租约中的地址提供给客户机之前会使用Ping测试作用域中每个可用地址的连通性。这可确保提供给客户的每个IP地址都没有被使用手动TCP/IP配置的另一台非DHCP计算机使用。

 

1.4 DNS服务原理

客户端用户从web浏览器里输入网站后看到网站的完整内容的完整访问过程

01.客户端用户在浏览器中输入www.znix.top 网站地址后回车,系统会首先查找本地host文件以及DNS缓存信息查找是否存在www.znix.top 对应的ip解析记录。如果有就直接获取ip地址,然后去访问这个ip地址对应的域名服务器,一般第一次请求时,DNS缓存是没有解析记录的。

windows 系统中的dns缓存

       #windows 系统查看与刷新缓存记录信息

       ipconfig /flushdns        <-- 清除缓存命令

       ipconfig /displaydns      <-- 显示缓存命令

       #显示hosts文件域名与地址映射关系配置信息(hosts文件位置)

       c:\windows\system32\drivers\etc\hosts

Linux 系统中的dns缓存

       #缓存方式

       nccd 或者 BIND 或者 dnsmasq

       #hosts文件 位置

       /etc/hossts

02.如果客户端本地缓存或hosts 没有对应的www.znix.top 域名的解析记录,那么,系统会把浏览器的解析请求交给在客户端本地设置的DNS服务器地址( 通常称此DNS为LDNS,即:localDNS )解析,如果LDNS服务器的本地缓存有对应的解析记录就会直接返回IP地址,如果没有,LDNS会负责继续请求其它的DNS服务器

03.LDNS 会从DNS 系统的(.)根开始请求www.znix.top 域名的解析,经过一系列的查找各个层级的DNS 服务器,最终会查到etiantian .org 域名对应的授权DNS 服务器,而这个授权DNS 服务器正是企业购买域名时用于管理域名解析的服务器,这个服务器会有www.znix.top对应的IP地址解析记录( A记录),如果此时没有,就表示企业的运维人员没有给www.znix.top 域名做解析。

04.www.znix.top 域名对应的授权DNS 服务器会把www.znix.top 对应的最终IP 解析记录(例如1.1.1.1)发给LDNS

05.LDNS 把收到的来自授权DNS 服务器www.znix.top 对应的IP 解析记录发给客户端浏览器,并且在LDNS本地把域名和IP的对应解析缓存起来,以便下一次更快的返回相同解析请求的记录。

06.客户端浏览器获取到www.znix.top的对应的IP地址,接下来,浏览器会请求获得的IP地址对应的web 服务器,web 服务器收到客户的请求并响应处理,将客户请求的内容返回给客户端浏览器,至此,一次访问浏览器网页的完整过程完成了其中此步骤客户端获取到服务器IP地址后,利用浏览器请求web服务器获取网页信息的过程称为HTTP 原理

 

1.4.1 DNS能干什么

Ø A记录:

将域名指向一个IPv4地址(例如:10.10.10.10),需要增加A记录

Ø CNAME记录:

如果将域名指向一个域名,实现与被指向域名相同的访问效果,需要增加CNAME记录(CDN加速)

Ø MX记录:

建立电子邮箱服务,将指向邮件服务器地址,需要设置MX记录

Ø NS记录:

域名解析服务器记录,如果要将子域名指定某个域名服务器来解析,需要设置NS记录

Ø TXT记录:

可任意填写(可为空),通常用做SPF记录(反垃圾邮件)使用

Ø AAAA记录:

将主机名(或域名)指向一个IPv6地址(例如:ff03:0:0:0:0:0:0:c1),需要添加AAAA记录

Ø PTR记录:

设置PTR记录,反向解析,即把IP地址解析为对应的域名,和A记录的解析相反(邮件服务等)

Ø 显性URL:

将域名指向一个http(s)协议地址,访问域名时,自动跳转至目标地址(例如:将www.net.cn显性转发到www.hichina.com后,访问www.net.cn时,地址栏显示的地址为:www.hichina.com)。

Ø 隐性URL:

与显性URL类似,但隐性转发会隐藏真实的目标地址(例如:将www.net.cn隐性转发到www.hichina.com后,访问www.net.cn时,地址栏显示的地址仍然为:www.net.cn)。

 

1.5 递归查询和迭代查询的区别

1.5.1 递归查询

递归查询是一种DNS 服务器的查询模式,在该模式下DNS 服务器接收到客户机请求,必须使用一个准确的查询结果回复客户机。如果DNS 服务器本地没有存储查询DNS 信息,那么该服务器会询问其他服务器,并将返回的查询结果提交给客户机。

1.5.2 迭代查询

DNS 服务器另外一种查询方式为迭代查询,DNS 服务器会向客户机提供其他能够解析查询请求的DNS 服务器地址,当客户机发送查询请求时,DNS 服务器并不直接回复查询结果,而是告诉客户机另一台DNS 服务器地址,客户机再向这台DNS 服务器提交请求,依次循环直到返回查询的结果为止。

 

1.6 DNS的相关命令

1.6.1 dig命令    

命令

LDNS

记录类型

网址

dig

@8.8.8.8

A

www.baidu.com

 

[root@oldboyedu-40-nb ~]# dig @8.8.8.8 gov.cn

 

; <<>> DiG 9.8.2rc1-RedHat-9.8.2-0.62.rc1.el6 <<>> @8.8.8.8 gov.cn

; (1 server found)

;; global options: +cmd

;; Got answer:

;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 51019

;; flags: qr rd ra; QUERY: 1, ANSWER: 0, AUTHORITY: 1, ADDITIONAL: 0

 

;; QUESTION SECTION:

;gov.cn.               IN  A

 

;; AUTHORITY SECTION:

gov.cn.         6855    IN  SOA a.dns.cn. root.cnnic.cn. 2021852429 7200 3600 2419200 21600

 

;; Query time: 11 msec

;; SERVER: 8.8.8.8#53(8.8.8.8)

;; WHEN: Thu Sep 28 18:59:49 2017

;; MSG SIZE  rcvd: 77

#dig @8.8.8.8 MX baidu.com

说明:通过dig命令查看解析原理,可以看到全球13台根服务器

1.6.2 nslookup

[root@oldboyedu-40-nb ~]# nslookup         <- 直接解析指定域名对应的地址

> www.gov.cn

Server:     223.5.5.5                      <- 解析域名信息的DNS服务器信息

Address:    223.5.5.5#53

 

Non-authoritative answer:

www.gov.cn  canonical name = www.gov.cn.qingcdn.com.

www.gov.cn.qingcdn.com  canonical name = uz91.v.qingcdn.com.  <-域名的CNAME 信息

Name:   uz91.v.qingcdn.com

Address: 125.39.21.26                        <- 域名对应的ip地址

Name:   uz91.v.qingcdn.com

Address: 125.39.21.6

Name:   uz91.v.qingcdn.com

Address: 125.39.21.4

Name:   uz91.v.qingcdn.com

Address: 125.39.21.5

Name:   uz91.v.qingcdn.com

1.6.3 host命令

[root@oldboyedu-40-nb ~]# host www.gov.cn       - 直接解析指定域名对应的地址

www.gov.cn is an alias for www.gov.cn.qingcdn.com.

www.gov.cn.qingcdn.com is an alias for uz91.v.qingcdn.com.

uz91.v.qingcdn.com has address 125.39.21.7

uz91.v.qingcdn.com has address 125.39.21.26

uz91.v.qingcdn.com has address 125.39.21.6

1.6.4 ping 命令

[root@oldboyedu-40-nb ~]# ping www.gov.cn -c1

PING uz91.v.qingcdn.com (125.39.21.7) 56(84) bytes of data.

64 bytes from no-data (125.39.21.7): icmp_seq=1 ttl=128 time=27.6 ms

 

--- uz91.v.qingcdn.com ping statistics ---

1 packets transmitted, 1 received, 0% packet loss, time 78ms

rtt min/avg/max/mdev = 27.639/27.639/27.639/0.000 ms

ping 命令参数

-c 包的个数

-i 设置间隔时间

-s 数据包的大小

-q 中间的信息不显示

-f  急速ping

1.7 网卡信息

[root@oldboyedu-40-nb ~]# cat /etc/sysconfig/network-scripts/ifcfg-eth0

DEVICE=eth0               #第一块网卡逻辑设备名

HWADDR=00:0c:29:a8:e4:14  #硬件地址,MAC地址(vm克隆后删除)

TYPE=Ethernet             #上网类型 -以太网

UUID=a3b2265e-9dac-4a29-aff6-d2e88eb28cfc#通用唯一标识码(vm克隆后删除)

ONBOOT=yes                #开机自启动

NM_CONTROLLED=yes         #网络管理控制参数 设置为no (centos6)

BOOTPROTO=none            #ip获取方式

IPADDR=10.0.0.201         #ip地址

NETMASK=255.255.255.0     #掩码

GATEWAY=10.0.0.2          #网关

USERCTL=no

PEERDNS=yes               #确认网卡配置文件中的DNS 配置优先与/etc/resolv.conf

IPV6INIT=no      

DNS2=223.6.6.6            #DNS2

DNS1=223.5.5.5            #DNS1

1.7.1 网卡详细配置文件信息

更多网卡配置相关知识

less /usr/share/doc/initscripts-*/sysconfig.txt

1.8 网卡生效方式

推荐的网卡重启方式

ifdown eth0 && ifup wth0

       配置那块网卡,重启哪块网卡

对所有的网卡进行重启(工作场景中谨慎使用)

/etc/init.d/network restart

注意:

① 网卡如果配置DNS,会优先于/etc/resolv.conf 的配置生效,并且重启网卡,会把/etc/resolv.conf里的覆盖

② 网卡如果没有配置DNS,那么在/etc/resolv.conf 里配置会生效

③ 如果有多块网卡(DHCP 获取方式)时候,可能会覆盖/etc/resolv.conf 里已有的配置。

1.9 主机名修改规范

第一步 首先,利用命令临时修改主机名

[root@oldboyedu-40-nb ~]# hostname oldboyedu-40-nb 

第二步 其次,修改network 配置文件,使主机名永久生效

[root@oldboyedu-40-nb ~]# cat /etc/sysconfig/network

NETWORKING=yes

HOSTNAME=oldboyedu-40-nb

       第三步 最后,修改hosts文件,建立主机名与环回ip的映射关系

[root@oldboyedu-40-nb ~]# cat /etc/hosts

127.0.0.1   localhost.localdomain   localhost.localdomain   localhost4    oldboyedu-40-nb

::1 localhost.localdomain   localhost.localdomain   localhost6    localhost6.localdomain6 localhost

127.0.0.1       oldboyedu-40-nb

1.10 linux下的路由配置

1.10.1 配置默认网关

添加:

[root@oldboyedu-40-nb ~]# route add default gw  10.0.0.254   

[root@oldboyedu-40-nb ~]# route -n

Kernel IP routing table

Destination     Gateway         Genmask         Flags Metric Ref    Use Iface

10.0.0.0        0.0.0.0         255.255.255.0   U     0      0        0 eth0

169.254.0.0     0.0.0.0         255.255.0.0     U     1002   0        0 eth0

0.0.0.0         10.0.0.254      0.0.0.0         UG    0      0        0 eth0

0.0.0.0         10.0.0.2        0.0.0.0         UG    0      0        0 eth0

删除:

[root@oldboyedu-40-nb ~]# route del default gw  10.0.0.254

[root@oldboyedu-40-nb ~]# route -n

Kernel IP routing table

Destination     Gateway         Genmask         Flags Metric Ref    Use Iface

10.0.0.0        0.0.0.0         255.255.255.0   U     0      0        0 eth0

169.254.0.0     0.0.0.0         255.255.0.0     U     1002   0        0 eth0

0.0.0.0         10.0.0.2        0.0.0.0         UG    0      0        0 eth0

1.10.2 静态网段 (临时的,重启网卡失效)

添加:

[root@oldboyedu-40-nb ~]# route add -net 192.168.0.0 netmask 255.255.0.0 gw 10.0.0.2

[root@oldboyedu-40-nb ~]# route -n

Kernel IP routing table

Destination     Gateway         Genmask         Flags Metric Ref    Use Iface

10.0.0.0        0.0.0.0         255.255.255.0   U     0      0        0 eth0

169.254.0.0     0.0.0.0         255.255.0.0     U     1002   0        0 eth0

192.168.0.0     10.0.0.2        255.255.0.0     UG    0      0        0 eth0

0.0.0.0         10.0.0.2        0.0.0.0         UG    0      0        0 eth0

删除:

[root@oldboyedu-40-nb ~]# route del -net 192.168.0.0 netmask 255.255.0.0 gw 10.0.0.2

[root@oldboyedu-40-nb ~]# route -n

Kernel IP routing table

Destination     Gateway         Genmask         Flags Metric Ref    Use Iface

10.0.0.0        0.0.0.0         255.255.255.0   U     0      0        0 eth0

169.254.0.0     0.0.0.0         255.255.0.0     U     1002   0        0 eth0

0.0.0.0         10.0.0.2        0.0.0.0         UG    0      0        0 eth0

1.10.3 永久生效的方法

1.10.3.1 方法一 生成配置文件,将路由信息写入。

/etc/sysconfig/network-scipts/route-eth0

172.16.1.0/24 via 192.168.1.1

1.10.3.2 方法二

/etc/sysconfig/static-routes

any net 172.16.1.0/24  gw 192.168.1.1

1.10.3.3 方法三 将命令写入开机自启动文件

/etc/rc.local

1.10.4 默认静态主机路由添加

route add  -host  192.168.2.13 dev eth2

route del  -host  192.168.2.13 dev eth2

1.11 配置虚拟ip地址方法

1.11.1 配置虚拟ip地址(别名ip)

命令格式:

ifconfig eth0:0 10.0.0.101/24 up        配置别名ip,并启用

ifconfig eth0:0 10.0.0.101/24 down      停用制定的别名IP

示例:

[root@oldboyedu-40-nb ~]# ifconfig eth0:0 10.0.0.101/24 up

[root@oldboyedu-40-nb ~]# ifconfig

eth0      Link encap:Ethernet  HWaddr 00:0C:29:A8:E4:14 

          inet addr:10.0.0.201  Bcast:10.0.0.255  Mask:255.255.255.0

          inet6 addr: fe80::20c:29ff:fea8:e414/64 Scope:Link

          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1

          RX packets:49465 errors:0 dropped:0 overruns:0 frame:0

          TX packets:45089 errors:0 dropped:0 overruns:0 carrier:0

          collisions:0 txqueuelen:1000

          RX bytes:20224063 (19.2 MiB)  TX bytes:7714321 (7.3 MiB)

 

eth0:0    Link encap:Ethernet  HWaddr 00:0C:29:A8:E4:14 

          inet addr:10.0.0.101  Bcast:10.0.0.255  Mask:255.255.255.0

          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1

 

lo        Link encap:Local Loopback 

          inet addr:127.0.0.1  Mask:255.0.0.0

          inet6 addr: ::1/128 Scope:Host

          UP LOOPBACK RUNNING  MTU:65536  Metric:1

          RX packets:38 errors:0 dropped:0 overruns:0 frame:0

          TX packets:38 errors:0 dropped:0 overruns:0 carrier:0

          collisions:0 txqueuelen:0

          RX bytes:2598 (2.5 KiB)  TX bytes:2598 (2.5 KiB)

说明:heartbeat 高可用(vIP)早期用的别名IP,Centos6下heatbeat用的是辅助ip。

使别名ip网卡重启不失效:

       写成能配置文件(/etc/sysconfig/network-scripts/ifcfg-eth0:1)

1.11.2 配置辅助ip地址方法:

表示配置多个ip在同一网卡上。

配置命令格式:

ip addr add 10.0.0.13/24 dev eth0:1  添加

ip addr add 10.0.0.14/24 broadcast 10.0.0.255 dev eth0:1 添加

ip addr del 10.0.0.13/24 dev eth0:1   删除

ip addr del 10.0.0.14/24 broadcast 10.0.0.255 dev eth0:1  删除

说明:辅助ip形式在keepalived高可用服务中一直使用,都是用的辅助ip。

      辅助ip的方式是未来趋势。

 

示例:

[root@oldboyedu-40-nb ~]# ip addr add 10.0.0.102/24 dev eth0:1

[root@oldboyedu-40-nb ~]# ip a

1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN

    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00

    inet 127.0.0.1/8 scope host lo

    inet6 ::1/128 scope host

       valid_lft forever preferred_lft forever

2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000

    link/ether 00:0c:29:a8:e4:14 brd ff:ff:ff:ff:ff:ff

    inet 10.0.0.201/24 brd 10.0.0.255 scope global eth0

    inet 10.0.0.102/24 scope global secondary eth0

    inet6 fe80::20c:29ff:fea8:e414/64 scope link

       valid_lft forever preferred_lft forever

删除:

[root@oldboyedu-40-nb ~]# ip addr del 10.0.0.102/24 dev eth0:1

1.12 【企业面试题】

1.12.1 统计访问服务器ip的ESTABLISHED连接数最多的ip?

方法一:[root@oldboyedu-40-nb ~]# netstat|awk -F "[ :]+" '/EST/{print $6}' |sort |uniq -c|sort -rn -k1

      1 10.0.0.1

方法二:[root@oldboyedu-40-nb ~]# netstat|awk '/^tcp/{s[$NF]++}END{for(a in s)print a,s[a]}'|sort -rn -k1

ESTABLISHED 1

1.12.2 已知一个端口为22,如何参看端口对应的服务名?

方法一:

[root@oldboyedu-40-nb ~]# lsof -i :22

COMMAND  PID USER   FD   TYPE DEVICE SIZE/OFF NODE NAME

sshd    1102 root    3u  IPv4  10308      0t0  TCP *:ssh (LISTEN)

sshd    1102 root    4u  IPv6  10310      0t0  TCP *:ssh (LISTEN)

方法二:

[root@oldboyedu-40-nb ~]# netstat -lntup|grep 22

tcp        0      0 0.0.0.0:22                  0.0.0.0:*                   LISTEN      1102/sshd          

tcp        0      0 :::22                       :::*                        LISTEN      1102/sshd   

1.13 路由追踪 【traceroute 命令】

[root@znix ~]# traceroute 8.8.8.8

traceroute to 8.8.8.8 (8.8.8.8), 30 hops max, 60 byte packets

 1  * * *

 2  11.220.137.101 (11.220.137.101)  30.128 ms  30.408 ms 11.220.136.37 (11.220.136.37)  31.026 ms

 3  11.220.137.118 (11.220.137.118)  25.325 ms 11.220.137.122 (11.220.137.122)  25.928 ms 11.220.136.122 (11.220.136.122)  25.794 ms

 4  116.251.105.69 (116.251.105.69)  27.118 ms 106.11.130.190 (106.11.130.190)  28.008 ms 106.11.130.182 (106.11.130.182)  27.837 ms

 5  116.251.112.189 (116.251.112.189)  26.409 ms 101.200.109.134 (101.200.109.134)  39.593 ms 116.251.112.157 (116.251.112.157)  37.824 ms

 6  106.38.196.5 (106.38.196.5)  26.568 ms * *

 7  * * *

 8  * * *

 9  * * *

10  202.97.53.246 (202.97.53.246)  29.232 ms 202.97.58.98 (202.97.58.98)  27.856 ms 202.97.53.246 (202.97.53.246)  29.002 ms

11  202.97.91.114 (202.97.91.114)  66.359 ms  66.241 ms  65.974 ms

12  202.97.62.214 (202.97.62.214)  105.680 ms  105.781 ms  105.321 ms

13  108.170.241.5 (108.170.241.5)  62.860 ms  62.687 ms 108.170.241.38 (108.170.241.38)  63.391 ms

14  72.14.232.155 (72.14.232.155)  63.230 ms 64.233.174.17 (64.233.174.17)  62.013 ms 66.249.95.199 (66.249.95.199)  63.684 ms

15  216.239.46.119 (216.239.46.119)  86.082 ms 209.85.247.124 (209.85.247.124)  76.583 ms 209.85.142.172 (209.85.142.172)  74.886 ms

16  216.239.57.241 (216.239.57.241)  75.346 ms 209.85.249.75 (209.85.249.75)  74.639 ms 216.239.43.103 (216.239.43.103)  76.405 ms

17  * * *

18  * * *

19  * * *

20  * * *

21  * * *

22  * * *

23  * * *

24  * * *

25  google-public-dns-a.google.com (8.8.8.8)  77.106 ms  76.575 ms  73.135 ms

1.14 检测端口是否开启

1.14.1 利用telnet命令

[root@oldboyedu-40-nb ~]# telnet 10.0.0.201 22

Trying 10.0.0.201...

Connected to 10.0.0.201.

SSH-2.0-OpenSSH_5.3

1.14.2 使用nmap命令

[root@oldboyedu-40-nb ~]# nmap 10.0.0.201 -p 20-23

 

Starting Nmap 5.51 ( http://nmap.org ) at 2017-09-28 21:05 CST

Nmap scan report for 10.0.0.201

Host is up (0.00012s latency).

PORT   STATE  SERVICE

20/tcp closed ftp-data

21/tcp closed ftp

22/tcp open   ssh

23/tcp closed telnet

 

Nmap done: 1 IP address (1 host up) scanned in 0.54 seconds

第2章 上网无法

 

2.1.1 局域网用户无法上网排查

 

2.1.2 网站访问慢的排查

 

第3章 ftp协议

3.1 FTP协议介绍

文件传输协议,监听的端口是21/tcp端口,是完成各主机之间文件共享的协议,将一个主机的服务共享给其它主机的FTP协议是工作于应用层的协议,是基于TCP协议来实现,数据的传输的可靠性;并且TCP是采用两个连接FTP协议是一种文本协议,支持telnet连接(文本协议都支持telnet的连接)FTP采用CS模式进行访问,拥有专用客户端,可以向服务器端发送大量请求的ftp相关的命令:

get  mget  put  mput  cd  ls

一般控制连接:是监听在tcp协议的21端口

一般数据连接:监听的端口需要分两种情况而定

3.1.1 主动模式

服务端会利用20号端口,主动向客户端发出数据传输请求,并先连2002端口,没有连2003依次类推但是客户端会拥有防火墙的概念,将服务端的请求屏蔽掉,因此产生了被动请求

3.1.2 被动模式

服务器端会通知一个报文,报文中可以中可以有的信息是151:20,因此通过计算可以得知服务器端开放的随机端口是151*256+20端口,客户端会通过服务端告知的随机端口进行数据的传输但是由于服务器端是端口随机的,因此服务器端也可能会有防火墙的概念,为解决此问题,会对防火墙的一个重要功能进行了解"连接追踪功能"---就是防火墙进程会判断连接与连接之间的关系,防火墙内部请求出去响应回防火墙的就会允许,防火墙外部请求进来的连接就会阻止,根据追踪连接请求的特征,tcp一段发起的建立连接请求的状态可以成为new状态,响应请求后完成建立的状态成为ESTB状态。

3.1.3 需要注意

所有数据传输的建立,都必须先建立控制连接,也就是输入相应的FTP命令,然后进行数据传输因此就产生了一个概念,related相关联的连接,防火墙会追踪连接彼此之间是否相关联, 只要是相关联的连接,不管是什么端口,都进行放行

3.1.4 补充说明

对用模式的主动和被动,都是根据服务端来进行说明的tcp 端口号是0-65535 udp 端口号是0-65535 所总计应该是12W多个端口防火墙是对端口进行控制,对请求的流量做限制,但是响应和流出的流量是不能进行过滤的数据传输模式:同时支持两种数据传输模式 文本模式和二进制模式,并且数据传输遵循文件本身的格式,否则强行将文本文件按二进制传输会出现乱码的情况,因此建议服务端与客户端自行协商传输模式.

3.1.5 说明

一般数据的存储形式分为 文本和二进制文件的格式

网上传输的数据一般分为三种(结构化数据 半结构化数据 非结构化数据)

 

西电计网实验 阅读详情

相关推荐

解忧杂货铺(四):Hightec生成HEX方法+小功能开启

Hightec使用的一些常用技能

梦想技术家 2162

DNS解析中的A记录、AAAA记录、CNAME记录、MX记录、NS记录、TXT记录、SRV记录、URL转发等

在任何 DNS 记录文件(Domain Name System (DNS) Zone file)中, 都是以SOA(Start of Authority)记录开始。SOA 资源记录表明此 DNS 名称服务器是为该 DNS 域中的数据的信息的最佳来源。SOA 记录与 NS 记录的区别:简单讲,NS记录表示域名服务器记录,用来指定该域名由哪个DNS服务器来进行解析;

RayPick的博客 1万+

别再手动配网了!用安信可PB-02模组+PHY Mesh App,5分钟搞定蓝牙Mesh智能灯群控

本文详细介绍了如何使用安信可PB-02模组和PHY Mesh App快速搭建蓝牙Mesh智能灯群控系统。通过5分钟的硬件连接和固件烧录,用户可实现多灯分组控制、场景切换及地理围栏等高级功能,显著提升智能家居部署效率。方案特别适合需要快速实现灯光群控的场景。

weixin_28675839的博客 419

DNS缓存服务器投毒攻击

【转自】http://blog.sina.com.cn/s/blog_49f23d7501011oxu.html 只要黑客想这么做,那我可以保证,您访问的Google,绝不是Google,淘宝也不是淘宝,而是一个伪装的网站,2008年,给ISP的DNS缓存服务器投毒是安全界最热门的话题,并且,这个问题仍然无法解决…… 通过本文,会看到一些奇妙的事情: 1、您发现在自家电脑的浏览器

浮城大亨的专栏 9056

Rsoft仿真实战:长周期光纤光栅参数优化与模式耦合分析

本文详细介绍了使用Rsoft软件进行长周期光纤光栅(LPFG)参数优化与模式耦合分析的实战方法。通过Rsoft仿真,可以高效优化光栅周期、包层厚度等关键参数,深入分析纤芯模与包层模的耦合特性,为光纤通信和传感应用提供可靠的设计依据。

h0i1j2k3l的博客 1115

CMU动作捕捉数据集实战:从AMC文件到Python可视化的完整流程

本文提供了CMU动作捕捉数据集的完整实战指南,详细解析了AMC文件格式,并对比了MATLAB转换、Python原生解析及转换为BVH格式三种数据解析策略。重点介绍了如何构建Python数据处理与可视化管道,包括将数据转换为Pandas DataFrame、绘制时间序列与相关性热力图,以及实现3D骨架动画,帮助开发者高效利用这一经典动作捕获数据集进行运动分析与模型训练。

android的专栏 716

DNS DHCP 路由 FTP

&#13; 第1章 网络基础&#13; 1.1 IP地址分类&#13;     IP地址的类别-按IP地址数值范围划分&#13;     IP地址的类别-按IP地址用途分类&#13;     IP地址的类别-按网络通信方式划分&#13; 1.2 局域网上网原理过程&#13;     DHCP原理过程详情: http://www.zyops.com/dhcp-working-p...

惨绿少年 | 欢迎访问CLSN博客站点 http://clsn.io 670

手把手实战:RK3588上YOLOv8模型从训练到部署全流程解析

本文详细解析了在RK3588开发板上部署YOLOv8目标检测模型的全流程。从模型训练、正确导出适配的ONNX格式,到使用RKNN-Toolkit2进行模型转换与量化,最后在板卡上完成部署与性能测试。文章提供了完整的代码示例和关键避坑指南,帮助开发者高效实现嵌入式AI应用落地。

weixin_28224217的博客 407

有关域名的一些事

什么是域名域名(Domain Name),是由一串用点分隔的名字组成的Internet上某一台计算机或计算机组的名称,用于在数据传输时标识计算机的电子方位(有时也指地理位置,地理上的域名,指代有行政自主权的一个地方区域)。域名使一个IP地址有"面具" 。一个域名的目的是成为便于记忆和沟通的一组服务器的地址(网站,电子邮件,FTP等),例如:www.b...

星幕·云影的博客 1579

基于SpringBoot 3 + Vue 3的全栈民宿预约管理系统设计与实现

文章将详细阐述系统的需求分析、架构设计、数据库设计、核心功能模块的实现(包括用户认证、房源管理、订单流程、支付集成等),并提供关键代码片段,最后对系统进行总结与展望。.requestMatchers("/api/admin/**").hasRole("ADMIN") // 管理员接口。.requestMatchers("/api/auth/**").permitAll() // 认证接口公开。.requestMatchers("/api/public/**").permitAll() // 公开资源。

2201_76125393的博客 272

OFDM调制解调系统信道估计和均衡算法的MATLAB仿真

然后,从接收到的信号中提取导频序列,并使用LS算法进行信道估计。OFDM(正交频分复用)是一种常用于高速数据传输的调制技术,它将高速数据流分割成多个低速子载波,通过在不同的子载波上传输数据,实现了频域上的正交性。因此,信道估计和均衡算法在OFDM系统中起着至关重要的作用,用于减小信道衰落引起的影响。通过运行上述代码,可以进行基于LS算法的OFDM调制解调系统信道估计和均衡的MATLAB仿真。本文将介绍一种基于LS(最小二乘)算法的OFDM调制解调系统信道估计和均衡算法,并提供相应的MATLAB仿真代码。

uote_e的博客 229

Linux 网络基础篇

从今天开始开始更新Linux的网络基础,希望大家多多关注,指出错误,我的Linux系统管理已经更新完成,有需要的可以去看看,链接: 链接: 从零开始学习Linux. Linux 网络基础篇第一章 计算机基础第一节 进制转换第二章 网络基础第一节 互联网概述第二节 互联网接入方法第三章 网络通信协议第一节 OSI七层模型和TCP四层模型 第一章 计算机基础 第一节 进制转换 十进制数:逢是进一 1 2 3 4 5 6 7 8 9 10 二进制数:逢二进一 0 1 10 11 100 101 110 1

yy150122的博客 1万+

CPA-7-资产减值

摘要:本文系统梳理了资产减值会计处理规范,涵盖六大要点:1)不同资产适用的减值准则(存货、长期资产、金融资产);2)减值测试触发条件与例外情形(商誉等需年度强制测试);3)存货可变现净值计算方法及特殊考量;4)可收回金额的双重判定标准(公允价值净额与现值孰高);5)资产组认定标准及减值分摊顺序(先商誉后按比例);6)含少数股东商誉的减值测试方法(需调整包含完全商誉的账面价值)。文中通过具体案例演示了合并报表中商誉减值的计算过程,强调比较基准应包含少数股东权益对应的商誉价值。

qq_34047402的博客 203

Linux网络基础知识全面总结

本文全面介绍了Linux网络基础知识及相关配置、工具、远程连接与管理、防火墙与安全性、网络服务与配置、虚拟网络与容器技术以及网络故障排除和调优等内容。通过阅读本文,你将对Linux网络有更深入的理解,并能够应用于实际的网络环境中。

qq_41308872的博客 1万+

深度学习工具包 DeepLearningToolbox

深度学习工具包Deprecation notice.-----This toolbox is outdated and no longer maintained.There are much better tools available for deep learning than this toolbox, e.g. [Theano](http://deeplearning.net/software/theano/), [torch](http://torch.ch/) or [tensorflow](http://www.tensorflow.org/)I would suggest you use one of the tools mentioned above rather than use this toolbox.Best, Rasmus.DeepLearnToolbox================A Matlab toolbox for Deep Learning.Deep Learning is a new subfield of machine learning that focuses on learning deep hierarchical models of data.It is inspired by the human brain's apparent deep (layered, hierarchical) architecture.A good overview of the theory of Deep Learning theory is[Learning Deep Architectures for AI](http://www.iro.umontreal.ca/~bengioy/papers/ftml_book.pdf)For a more informal introduction, see the following videos by Geoffrey Hinton and Andrew Ng.* [The Next Generation of Neural Networks](http://www.youtube.com/watch?v=AyzOUbkUf3M) (Hinton, 2007)* [Recent Developments in Deep Learning](http://www.youtube.com/watch?v=VdIURAu1-aU) (Hinton, 2010)* [Unsupervised Feature Learning and Deep Learning](http://www.youtube.com/watch?v=ZmNOAtZIgIk) (Ng, 2011)If you use this toolbox in your research please cite [Prediction as a candidate for learning deep hierarchical models of data](http://www2.imm.dtu.dk/pubdb/views/publication_details.php?id=6284)```@MASTERSTHESIS\{IMM2012-06284, author = "R. B. Palm", title = "Prediction as a candidate for learning deep hierarchical models of data", year = "2012",}```Contact: rasmusbergpalm at gmail dot comDirectories included in the toolbox-----------------------------------`NN/` - A library for Feedforward Backpropagation Neural Networks`CNN/` - A library for Convolutional Neural Networks`DBN/` - A library for Deep Belief Networks`SAE/` - A library for Stacked Auto-Encoders`CAE/` - A library for Convolutional Auto-Encoders`util/` - Utility functions used by the libraries`data/` - Data used by the examples`tests/` - unit tests to verify toolbox is workingFor references on each library check REFS.mdSetup-----1. Download.2. addpath(genpath('DeepLearnToolbox'));Example: Deep Belief Network---------------------```matlabfunction test_example_DBNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit RBM and visualize its weightsrand('state',0)dbn.sizes = [100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);figure; visualize(dbn.rbm{1}.W'); % Visualize the RBM weights%% ex2 train a 100-100 hidden unit DBN and use its weights to initialize a NNrand('state',0)%train dbndbn.sizes = [100 100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);%unfold dbn to nnnn = dbnunfoldtonn(dbn, 10);nn.activation_function = 'sigm';%train nnopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.10, 'Too big error');```Example: Stacked Auto-Encoders---------------------```matlabfunction test_example_SAEload mnist_uint8;train_x = double(train_x)/255;test_x = double(test_x)/255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit SDAE and use it to initialize a FFNN% Setup and train a stacked denoising autoencoder (SDAE)rand('state',0)sae = saesetup([784 100]);sae.ae{1}.activation_function = 'sigm';sae.ae{1}.learningRate = 1;sae.ae{1}.inputZeroMaskedFraction = 0.5;opts.numepochs = 1;opts.batchsize = 100;sae = saetrain(sae, train_x, opts);visualize(sae.ae{1}.W{1}(:,2:end)')% Use the SDAE to initialize a FFNNnn = nnsetup([784 100 10]);nn.activation_function = 'sigm';nn.learningRate = 1;nn.W{1} = sae.ae{1}.W{1};% Train the FFNNopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.16, 'Too big error');```Example: Convolutional Neural Nets---------------------```matlabfunction test_example_CNNload mnist_uint8;train_x = double(reshape(train_x',28,28,60000))/255;test_x = double(reshape(test_x',28,28,10000))/255;train_y = double(train_y');test_y = double(test_y');%% ex1 Train a 6c-2s-12c-2s Convolutional neural network %will run 1 epoch in about 200 second and get around 11% error. %With 100 epochs you'll get around 1.2% errorrand('state',0)cnn.layers = { struct('type', 'i') %input layer struct('type', 'c', 'outputmaps', 6, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %sub sampling layer struct('type', 'c', 'outputmaps', 12, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %subsampling layer};cnn = cnnsetup(cnn, train_x, train_y);opts.alpha = 1;opts.batchsize = 50;opts.numepochs = 1;cnn = cnntrain(cnn, train_x, train_y, opts);[er, bad] = cnntest(cnn, test_x, test_y);%plot mean squared errorfigure; plot(cnn.rL);assert(er<0.12, 'Too big error');```Example: Neural Networks---------------------```matlabfunction test_example_NNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);% normalize[train_x, mu, sigma] = zscore(train_x);test_x = normalize(test_x, mu, sigma);%% ex1 vanilla neural netrand('state',0)nn = nnsetup([784 100 10]);opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samples[nn, L] = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.08, 'Too big error');%% ex2 neural net with L2 weight decayrand('state',0)nn = nnsetup([784 100 10]);nn.weightPenaltyL2 = 1e-4; % L2 weight decayopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex3 neural net with dropoutrand('state',0)nn = nnsetup([784 100 10]);nn.dropoutFraction = 0.5; % Dropout fraction opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex4 neural net with sigmoid activation functionrand('state',0)nn = nnsetup([784 100 10]);nn.activation_function = 'sigm'; % Sigmoid activation functionnn.learningRate = 1; % Sigm require a lower learning rateopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex5 plotting functionalityrand('state',0)nn = nnsetup([784 20 10]);opts.numepochs = 5; % Number of full sweeps through datann.output = 'softmax'; % use softmax outputopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex6 neural net with sigmoid activation and plotting of validation and training error% split training data into training and validation datavx = train_x(1:10000,:);tx = train_x(10001:end,:);vy = train_y(1:10000,:);ty = train_y(10001:end,:);rand('state',0)nn = nnsetup([784 20 10]); nn.output = 'softmax'; % use softmax outputopts.numepochs = 5; % Number of full sweeps through dataopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, tx, ty, opts, vx, vy); % nntrain takes validation set as last two arguments (optionally)[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');```[![Bitdeli Badge](https://d2weczhvl823v0.cloudfront.net/rasmusbergpalm/deeplearntoolbox/trend.png)](https://bitdeli.com/free "Bitdeli Badge")

WINCC7.3破解文件

WINCC7.3硬件够破解文件,有需要的下载!WINCC7.3硬件够破解文件,有需要的下载!

Linux运维网络基础

网络基础第一部分 其他优质文档 课程概述介绍说明 1. 网络学习概念介绍 什么是网络技术 | 学习网络重要性 | 网络的技术技能介绍了解 2. 网络实现通讯条件 网络传输传输介质介绍 | 网卡设备功能作用说明 | 网络传输速率协商过程概念理解 | 网络数据传递过程 3. 网络重要设备介绍 网络交换设备概念作用介绍 | 网络路由设备概念作用介绍概念掌握 4. 网络路由配置方法 路由配置命令信息 1. 网络学习概念介绍 什么是网络:

hello world 1615

Statistics and Machine Learning Toolbox

Statistics and Machine Learning Toolbox(带书签),MATLAB统计学习工具

网络基础(2)---子网划分、TCP/IP、DNS、DHCP

网络基础(2) IP的分类: A,B,C,D,E A,B,C三类为单播地址 (既可以作为源IP,也可以作为目标IP使用) D ---- 组播地址 只能作为目标IP使用 E ---- 保留地址 ​ 单播----一对一 ​ 组播----一对多(同一个组播组) ​ 广播----一对所有(同一个广播域) 特殊IP地址: 127.0.0.1-127.255.255.254 环回地址(主要用来排错和检测) 255.255.255.255 —受限广播地址 (只能作为目标地址使用) 主机位全1 : 直接广播地址 (

weixin_43239001的博客 768

假人有限元模型

假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用

网络基础知识(Ip地址,网关,子网掩码,DNS)

有3个255,就看前三个是不是一样的,都是192.168.1,同网段之间可以直接发送数据包。细节补充:一个Ipv4有32比特,划分为4段,一段8比特。所以用二进制算,每个数最大为2^8次幂,也就是256,但是到256就进1,了,所以最大为255。以后有时间再去学习一下网络编程。网关负责将数据包转发到其他网络(如互联网),无网关则无法跨网段通信。:面向连接、可靠传输(三次握手)、有拥塞控制(如网页浏览)。若无结果,向递归DNS服务器(如ISP的DNS)请求。:无连接、高效但不可靠(如视频流、DNS查询)。

qq_62834722的博客 2252

网络基础知识--面试

目录网络基础为什么需要使用SNAT,DNAT,和双向NAT,并进行数据流分析。请问局域网2台PC是如何通信的请问什么是默认路由、静态路由、动态路由和适用场景请问VLAN作用,access和trunk工作原理,不同VLAN之间是如何通信的单臂路由的工作原理和数据流分析二层广播风暴可以怎么解决二层单点故障可以怎么解决请简述IPv6的优势,什么是天窗问题,IPv6过渡技术协议基础请解释清楚OSI七层模型每一层的功能与作用ARP解决什么问题,代理ARP解决什么问题,ARP欺骗的原理是什么如何断开TCP连接请问DHC

暖风吹起云之博客 1252

Linux网络基础

Linux系统中的网络基础知识包括网络协议、网络配置和网络命令等方面。TCP/IP协议是互联网通信协议的基础,HTTP协议和FTP协议分别用于Web浏览器和文件传输。网络配置包括静态IP地址配置和DHCP配置,可以帮助用户实现网络连接和数据传输。网络命令可以帮助用户管理和调试网络,包括ping命令、ifconfig命令、netstat命令和traceroute命令等。初学者可以通过学习和掌握这些基本知识和命令,更好地管理和调试Linux系统中的网络。

Kali与编程 1124

4、网络基础知识

根据考试大纲,本章要求考生掌握以下几个方面的知识点。(1)网络体系结构。(2)传输介质,传输技术,传输方法,传输控制。(3)常用网络设备和各类通信设备的特点。(4)LAN(拓扑,存取控制,组网,网间互连)。(5)Internet和Intranet基础知识以及应用。(6)网络软件,网络管理,网络性能分析。从历年的考试情况来看,本章的考点主要集中以下方面。在OSI模型与TCP/IP协议族方面,主要考查各个网络层次有哪些协议、设备,它们具备什么样的功能特性以及IP网络下的子网划分。

qq_44774198的博客 3211

Linux云计算之网络基础8——IPV6和常用网络服务

用于Internet上的控制文件的双向传输。同时,它也是一个应用程序 (Application)FTP服务可以实现文件的"下载”(Download)和“上传”(Upload)。下载”文件就是从远程主机拷贝文件至自己的计算机上;”上传”文件就是将文件从自己的计算机中拷贝至远程主机上。用Internet语言来说,用户可通过客户机程序向 (从) 远程主机上传 (下载)文件。域名系统)是互联网中的一种分布式数据库系统,

m0_52432110的博客 2663
上一篇: 网络基础三 ARP 地址分类 NAT技术
下一篇: route命令实例练习
惨绿少年
博客等级 码龄10年 173粉丝 236原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值