第1章 網絡基礎
1.1 IP地址分類
IP地址的類別-按IP地址數值范圍划分
IP地址的類別-按IP地址用途分類
IP地址的類別-按網絡通信方式划分
1.2 局域網上網原理過程
DHCP原理過程詳情: 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@clsn ~]# 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@clsn ~]# 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@clsn ~]# 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@clsn ~]# 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@clsn ~]# 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@clsn ~]# hostname clsn
第二步 其次,修改network 配置文件,使主機名永久生效
[root@clsn ~]# cat /etc/sysconfig/network
NETWORKING=yes
HOSTNAME=clsn
第三步 最后,修改hosts文件,建立主機名與環回ip的映射關系
[root@clsn ~]# cat /etc/hosts
127.0.0.1 localhost.localdomain localhost.localdomain localhost4 clsn
::1 localhost.localdomain localhost.localdomain localhost6 localhost6.localdomain6 localhost
127.0.0.1 clsn
1.10 linux下的路由配置
1.10.1 配置默認網關
添加:
[root@clsn ~]# route add default gw 10.0.0.254
[root@clsn ~]# 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@clsn ~]# route del default gw 10.0.0.254
[root@clsn ~]# 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@clsn ~]# route add -net 192.168.0.0 netmask 255.255.0.0 gw 10.0.0.2
[root@clsn ~]# 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@clsn ~]# route del -net 192.168.0.0 netmask 255.255.0.0 gw 10.0.0.2
[root@clsn ~]# 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@clsn ~]# ifconfig eth0:0 10.0.0.101/24 up
[root@clsn ~]# 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@clsn ~]# ip addr add 10.0.0.102/24 dev eth0:1
[root@clsn ~]# 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@clsn ~]# ip addr del 10.0.0.102/24 dev eth0:1
1.12 【企業面試題】
1.12.1 統計訪問服務器ip的ESTABLISHED連接數最多的ip?
方法一:[root@clsn ~]# netstat|awk -F "[ :]+" '/EST/{print $6}' |sort |uniq -c|sort -rn -k1
1 10.0.0.1
方法二:[root@clsn ~]# netstat|awk '/^tcp/{s[$NF]++}END{for(a in s)print a,s[a]}'|sort -rn -k1
ESTABLISHED 1
1.12.2 已知一個端口為22,如何參看端口對應的服務名?
方法一:
[root@clsn ~]# 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@clsn ~]# 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@clsn ~]# 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@clsn ~]# 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 說明
一般數據的存儲形式分為 文本和二進制文件的格式
網上傳輸的數據一般分為三種(結構化數據 半結構化數據 非結構化數據)