网络TCP/IP OSI 模型

tcp/ip协议组,里面20多种协议

  1. tcp/ip 最重要
    tcp: 有连接。3次握手,4次挥手。常连接。
    重新组包。

    udp: 只管发,不管收。

  2. icmp
    反射包。网络监测。
    ping,但是icmp可以禁用。

  3. vrrp

网络转换协议
DNAT
destination network address transform

SNAT
source network address transform

交换机 性能好,贷款足 二层
三层交换机。

QoS

集线器 ,一层

重新组包 三层。

multicast 组包通信

广播,广播IP地址,255.255.255.255

广播风暴
抑制广播风暴是网管重要的任务。

192.168.10.0/25
255.255.255.248

转发服务
我现在要不pan.itshine.cn: 5080发布外网

  1. 我做了dns解析,因为的ip地址不是固定的。

  2. 我使用动态dns解析了 pan.itshine.cn
    我在10.19上安装ddns服务,如果发现我的外网地址有变化,一分钟检查一次,whatmyip.com,主动写入到阿里yun dns解析
    首先我得有个阿里云账号,并且开启dns服务,申请access-key

  3. 安装我得kod云盘。php,要安装nginx,php7.4
    4.要在我的路由器上发布端口 5080, 80端口一定要通信管理局备案,要备案就必须要由公司法人,公众,并且必须在具体备案资格的云平台供应商。

  4. 如果我发布的虚拟主机已经被路由转发到了,但是说实际上我真正的服务不在10.10上面。gitlab.ycjy.info.可能还需要用到转发。

  5. 某些服务必须使用https服务。
    nexus.ycjy.info

HTTPS协议

加密解密

word文档加密解密是同一个密码,但是问题是,告知对方的密码的必须是明文。
网卡设置成混杂模式,可以侦听所有的信息。

同一密码加密解密这是 对称加密
不是同一个密码是 非对称加密。
客户和服务端必须大家有自己的 公钥和秘钥,
公钥是众所周知。
私钥是自己的

A 和 B通信

A公钥 PA
密码 PS

B的公钥: PB
私钥: PT
公钥加密的数据,我的私钥可以解开,反正亦然
但是 2个密码之间相互不能推导。1024位大质数。
50年才能推导出来。

产生2个数据的命令
ssh-keygen
ssh_copy_id 相互信任
A发数据给B

  1. A和B相互告知自己的公钥
  2. A用B的公钥 PB加密,发给B
  3. 私钥只有B有,只有B才能解决,侦听无法解开。
  4. B用A的公钥PA加密,发给A,那么只要A能解开,

这样产生的问题,代理人问题

A本来我要数据给B,
A->B
A->B1(黑客)->B

有了第三方对B的公钥进行证明,和摘要。

mkcert 自己下载安装。

dns(bind服务)

dig pms.ycjy.ino@192.168.10.19

mail服务

netstat

看网络状态的
比如,查看mysql服务器有没有启动

  • netstat -antp |grep 3306
  • ps -ef |grep mysql
  • systemctl status mariadb

某个服务器是否起来
netstat看端口
ps看进程

看防火墙是否起来
ps -ef |grep firewall

ping

首选检测对方服务器是不是通的。不是绝对的,可能对方服务器关闭了ICMP的包回应,就不能探测了。

telnet

telnet 和ssh 有关系,都是终端命令,可以交互的。
但是telnet是明文,因此被弃用。

可以检测某个服务器的端口不是开通。
telnet 192.168.10.200 3306
他是首选检测对方服务器端口是不是开放的工具。如果连接不上,证明对方服务器的防火墙未关闭或者对方的服务器端口没有开启。

如下

[root@yfserver ~]# telnet 192.168.10.3 15210
Trying 192.168.10.3...
Connected to 192.168.10.3.
Escape character is '^]'.
^C^CConnection closed by foreign host.
[root@yfserver ~]# telnet 192.168.10.3 1521
Trying 192.168.10.3...
telnet: connect to address 192.168.10.3: No route to host

curl

下载

curl url >content.html
curl url >xxx.tar.gz 
curl url -o xxx.tar.gz  # o小写

curl -Ssl url >content.html
** 如果遇到了https://url 下载的说证书不正确,要加参数才能解决 **
curl -Ssl --no-check-certificate https://xxx.com/my.tar.gz >my.tar.gz

wget

服务器没有,此时
yum -y install wget
wget https://ip:5080/00005.csv >00005.csv
wget https://ip:5080/00005.csv -O 00005.csv

dig(dns解析)

dns=domain name server

dig www.baidu.com @8.8.8.8

[root@yfserver ~]# dig www.yf.com @8.8.8.8

; <<>> DiG 9.11.4-P2-RedHat-9.11.4-26.P2.el7_9.15 <<>> www.yf.com @8.8.8.8
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 6275
;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1

;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 512
;; QUESTION SECTION:
;www.yf.com.                    IN      A

;; ANSWER SECTION:
www.yf.com.             3501    IN      A       208.109.175.102

route

windows: route print
route add
route delete
linux: route

ifconfig

ifconfig -a
可以看到网络流量和IP 地址

ip

ip adresss 显示IP地址
ip 也比较复杂

#tcpdump

看网络知识相关章节

nmcli (centos 8)

看网络知识相关章节

作者:严锋  创建时间:2023-12-07 17:03
最后编辑:严锋  更新时间:2025-05-09 15:48