网络调试助手:https://pan.baidu.com/s/1Do-v8XMDaIYJsXRQok5RhQ 提取码:ya4g (便于测试)
套接字(Socket)是计算机之间进行通信的一种约定。通过Socket,一台计算机可以接受其他计算机的数据,也可以向其他计算机发送数据。远程管理软件和黑客软件大多依赖于Socket来实现特定功能的,其包括两个部分:运行于服务器端称之为ServerSocket,运行于客户机端称之ClientSocket。
TCP是因特网中的传输层协议,使用三次握手协议建立连接
TCP_Client.py
import socket
def main():
# 创建TCP套接字
tcp_client_socket = socket.socket(socket.AF_INET,socket.SOCK_STREAM)
# 服务器地址
sever_ip = input("请输入服务器ip:")
sever_port = input("请输入服务器端口:")
# 连接服务器(元组)
tcp_client_socket.connect((sever_ip,int(sever_port)))
# 输入发送的数据
data = input("请输入要发送的数据:")
# 发送数据
tcp_client_socket.send(data.encode("utf-8"))
#接收数据
recv_data = tcp_client_socket.recv(1024)
print("对方的回复:"recv_data.decode("utf-8"))
if __name__ == '__main__':
main()
nc -lvp 8888
监听8888端口
(一次完整对话)
TCP_Sever.py
import socket
def main():
# 创建套接字
tcp_server_socket = socket.socket(socket.AF_INET,socket.SOCK_STREAM)
# 绑定本地IP和端口
tcp_server_socket.bind(("192.168.12.1",8888))
# 被动 listen
tcp_server_socket.listen(128)
while True:
# 等待客户端信息
print("等待客户端连接")
client_socket,client_addr = tcp_server_socket.accept()
print("客户端为:",client_addr)
#接收对方发送数据
recv_data = client_socket.recv(1024)
print("接收到信息为:",recv_data.decode("utf-8"))
#发送数据到客户端
client_socket.send("Yasso".encode("utf-8"))
client_socket.close()
if __name__ == "__main__":
main()
UDP 为应用程序提供了一种无需建立连接就可以发送封装的 IP 数据包的方法。
UDP_Client_send.py
import socket
#创建udp套接字
udp_socket = socket.socket(socket.AF_INET,socket.SOCK_DGRAM)
# 目标ip和端口
target_addr = ('192.168.12.128',8888)
#获取数据
data = input("请输入要发送的数据:")
#发送数据
udp_socket.sendto(data.encode('utf-8'),target_addr)
udp_socket.close()
UDP_Client_receive.py
import socket
#创建udp套接字
udp_socket = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
local_addr=('192.168.12.128',8888)
#绑定ip(必须本地)和端口
udp_socket.bind(local_addr)
#等待接受对方发送的数据
recv_data = udp_socket.recvfrom(1024) #表示本次接受的最大字节数1024
# 显示接受的数据
print(recv_data[0].decode('utf-8'))
udp_socket.close()
liunx等待接受数据->win10发送数据->liunx成功接收数据
nc -ulp 8888
监听udp模式下的8888端口
私密聊天室
# UDP应用-私密聊天室(极简)
import socket
def send(chat_ip,chat_port):
udp_socket = socket.socket(socket.AF_INET,socket.SOCK_DGRAM)
"""发送消息"""
address = (chat_ip,int(chat_port))
print(address)
data = input("请输入发送的消息:")
udp_socket.sendto(data.encode("utf-8"),address)
def receive():
"""接收消息"""
udp_socket = socket.socket(socket.AF_INET,socket.SOCK_DGRAM)
# 绑定本地IP和端口
udp_socket.bind(("192.168.12.1",8888))
recv_data = udp_socket.recvfrom(1024)
print(recv_data[0].decode('utf-8'))
def main():
chat_ip = input("请输入您聊天对方IP地址:")
chat_port = input("请输入您聊天对方端口:")
# 循环调用
while True:
print("++++++欢迎进入私密聊天室++++++")
print("0:发送消息")
print("1:接收消息")
print("2:退出聊天")
function = input("请输入您要用的模块")
if function == "0":
send(chat_ip,chat_port)
elif function == "1":
receive()
elif function == "2":
break
else:
print("输入有误,请重新输入")
if __name__ == '__main__':
main()
文章浏览阅读5.5k次,点赞8次,收藏29次。第四关: 首先也是栈开辟:然后由第三关以及前面对sscanf函数的分析可知,这里应该也是要输入两个数。参数1从-0xc(%ebp)加载,参数2从-0x10(%ebp)处加载。0x804a23e应该里面的内容也是sscanf的输入格式之类的。返回值要等于2,不然会引爆炸弹。接一下来一段说明输入的第一个参数的范围要在0-14之间接下来,赋初始_boompack 反编译
文章浏览阅读1.6k次。1.地理知识 : 时区图2. ZoneDateTime 类ZoneDateTime : 是带时区的日期时间类。区别于 LocalDateTime 类,LocalDateTime 类是 默认时区的日期时间类,中国默认的 时区是 【东八区】。因此,当LocalDateTime 手动指定 时区后 就变成了ZoneDateTime。时区id 可以通过ZoneId类的API 直接获取。3. 相关的API 代码下面简单演示一下相关的操作package com.northcastle.K_Date_java zoneddatetime
文章浏览阅读352次,点赞2次,收藏2次。FXGroup研究生课题_fdsst
文章浏览阅读793次。原文:https://blog.csdn.net/weixin_42491857/article/details/80741060写程序大体步骤为:1.用编辑器编写源代码,如.c文件。2.用编译器编译代码生成目标文件,如.o。3.用链接器连接目标代码生成可执行文件,如.exe。但如果源文件太多,一个一个编译时就会特别麻烦,于是人们想到,为什么不设计一种类似批处理的程序,来批处理..._cmake与qcmake的区别
文章浏览阅读227次。Another industry person close to Foxit Wu Yu added that Foxit’s business with Google can kill two birds with one stone.Open source is a self-certification of its technical strength. For example, Microsoft spent 7.5 billion US dollars to acquire open sourc._another industry
文章浏览阅读2k次。限制密码重试次数,超过限制次数后锁定用户本文PDF版下载http://xunzhaoxz.itpub.net/resource/40016/29789作者:xunzhao【转载时请以超链接形式标明文章出处和作者信息】链接:http://xunzhaoxz.itpub.net/post/40016/488626加强系统安全,其中一大要务就是保护好系_aix查看用户锁定情况
文章浏览阅读2.5w次,点赞23次,收藏198次。都是工作上碰到的需要学习的知识,比较实用。1、修改Pin脚网络set up --user preference EditorLogic--net logicOption处选择网络,然后find处选择Pins,之后点击要修改网络的Pin即可将原来的网络修改为所选择的网络。2、在使用测量工具的时候,...
文章浏览阅读7.2k次,点赞2次,收藏14次。来源:极市平台本文多干货,建议收藏本文整理汇总了90+深度学习各方向的开源数据集,包含了小目标检测、目标检测、工业缺陷检测、人脸识别、姿态估计、图像分割、图像识别等方向。附下载链接。小目标检测1. AI-TOD航空图像数据集数据集下载地址:http://m6z.cn/5MjlYkAI-TOD 在 28,036 张航拍图像中包含 8 个类别的 700,621 个对象实例..._bmp图片测试集下载
文章浏览阅读378次。文章目录话不多说!实验环境实验目的来吧!!展示!!!配置NFS文件服务器配置节点服务器配置 LVM验证实验关于负载均衡的原理,我I在上一篇写的很详细~~(大概吧)~~ 了链接在这:博客地址点我话不多说!实验环境使用 VM虚拟机进行演示共使用 六 台虚拟机:1、负载均衡调度器,同时作为进出口网关 CentOS7.62、三台 节点服务器 CentOS7.63、一台 NFS 文件服务器 CentOS7.64、一台 客户端 使用 Win10实验目的客户端20端访问服务器群集,验证轮询_lvs-nat访问不到网页
文章浏览阅读7.7k次,点赞2次,收藏5次。环境:三台hadoop集群,hive,hbase,zookeeper三台机器内网互相通信,配置有一个外网ip,使用nginx端口映射kylin安装:安装部分参考文档:https://blog.csdn.net/seashouwang/article/details/77869773https://www.cnblogs.com/itboys/p/6322421.html1.从官..._kylin 安装到虚拟机失败重启出现控制台
文章浏览阅读1.1k次。netfilter/iptables 是Linux内核集成的 IP 数据包过滤系统,它由 netfilter 和 iptables 两个组件组成。其中 netfilter 是工作在内核空间,由许多Hook函数组成,根据“规则”控制数据包并做相应的处理,而 iptables 则是用户空间的一个工具,用于操作规则的(操作netfilter的Hook函数),但很多时候我们直接简称为iptables了。_netfilter masquerade
文章浏览阅读1.3k次,点赞2次,收藏3次。摘要:本文罗列了OpenStack Nova Ussuri版本的新增功能,并会对其中重要项进行详细分析。新增功能列表重大变化1. 支持在Nova cells间进行cold migrate和resize操作相关概念nova cell V2:为了降低数据库和消息队列的访问瓶颈引入了cell的概念。其中API Cell运行nova-api、nova-scheduler、nova-conductor服务,并包含nova_api(全局数据)和nova_cell0(调度失败的虚机数据).._ussuri nova evacuate