03 2018 档案
摘要:三次握手协议:三次握手协议的主要过程是交互彼此之间的初始序列号,如果没有确认的ACK帧可以么?肯定是可以的 client A > server B client A 发送了自己的初始序列号;然后B看见了之后B发送了一个初始序列号,这样两次“握手”都可以啊。但是两次握手的问题是:此时A开始发送信息,B
阅读全文
摘要:三次握手协议:三次握手协议的主要过程是交互彼此之间的初始序列号,如果没有确认的ACK帧可以么?肯定是可以的 client A > server B client A 发送了自己的初始序列号;然后B看见了之后B发送了一个初始序列号,这样两次“握手”都可以啊。但是两次握手的问题是:此时A开始发送信息,B
阅读全文
摘要:一直感觉一端发送数据,另一端接受数据很不可思议的事情,如果不能即时地读走会导致什么后果呢? 其实socket读出来的数据,你自己看着办,里面的数据是什么格式你自己去解析,用户可以基于TCP去实现你自己的协议【其实等价于客户基于IP协议去实现自己的传输层协议】,所以可以想想用户是怎么实现http协议的
阅读全文
摘要:从UDP开始看吧,udp_rcv时,数据包已经经过了驱动,网络层的层层过滤来到了传输层,在这里还是要经过层层的考验才会进入到最终socket 重要数据结构:udp_table: 67 /** 68 * struct udp_table - UDP table 69 * 套接字都是本地创建的 70 *
阅读全文
摘要:https://blog.csdn.net/bytxl/article/details/45397967 网络抓包的原理解析,在看网络收包的代码时,有个关键的结构体叫packet_type,这个结构体就是网络收包时对包的各种乱七八糟的操作函数的链表,这篇文章解析了该函数。 https://blog.
阅读全文
摘要:真正看网络收包了 netif_receive_skb 疑问1:当一个网卡收到了包之后,使用wireshark还是能抓到数据包的,但是没有回应;
阅读全文
摘要:经常有这样的词汇叫包的过滤,包的过滤肯定是发生在刚刚接受包的地方,这个重要的节点是哪里?
阅读全文
摘要:http协议中到底都会传输我电脑上的啥东西呢?主机名,账号密码? 没有主机名,有你这台主机的操作系统。。。也就是说他们会知道你的操作系统。。。。。
阅读全文
摘要:在做网络试验中发现,抓包是超级有用的一个工具,抓到了包我就知道了数据流,就可以解析数据,看网络的流量是不是按照所假定的那种方式去走的,所以今天就看看通常情况下网络抓包的原理。 网络抓包包括 tcpdump官网 http://www.tcpdump.org/ pcap_setfilter 调用了啥函数
阅读全文
摘要:docker有容器内外的端口映射,是怎么做到的呢?这是要起一个新的网络的namespace吧; 启动了docker之后,在docker上面还是有确实是有iptables的项,但是此时应该是有两个网络的namespace吧,使用ip netns list是没有看到的,也就是说其实是在一个网络的name
阅读全文
摘要:bcc编译,直接在docker里编,太方便;第一次深切体会到docker的强大; 1)下载bcc源码; 2) 把源码中的Dockerfile.ubuntu重命名为Dockerfile 3)sudo docker build . 4)经过大约10分钟,编译完毕; 编好的文件都都在镜像里了,然后用sud
阅读全文
摘要:我的工作机是A,通信网卡是Aeth0, Appp0; 然后我的云主机是B, 通信的网卡是Beth0, Bppp0; 在网卡Bppp0上会不断地很清晰的数据包: 16:40:39.522917 IP 61.135.169.121 > 192.168.0.234: ICMP echo reply, id
阅读全文
摘要:测试代码:https://github.com/honpey/codebox/tree/master/dlink (gdb) watch *601030Hardware watchpoint 2: *601030(gdb) watch *0x601030Hardware watchpoint 3:
阅读全文
摘要:这个问题的根源在:使用动态链接库可以省内存,因为多个进程可以共享物理内存; 老觉得这部分逻辑是在用户态的动态加载器完成的,但是想想奇怪,动态加载器是嵌入到进程里的so,案例说是不会感知到外面的世界的啊,难道是内核? 【等等,动态加载器,可能直接就是在不同的进程中中共享的一份,是不是它本身就记录着整个
阅读全文
摘要:动态链接是个 _GLOBAL_OFFSET_TABLE_是干嘛的? https://www.codeproject.com/Articles/33340/Code-Injection-into-Running-Linux-Application 动态链接是怎么回事? 静态链接的重定位表中有这个.o文
阅读全文
摘要:他们会把做内核的人当成无所不能的,认为你们对反编译啥的都应该会。 俗话说的好,人要活成别人想要的样子嘛: 看下如何停止进程,让大家看到内存中到底是啥样子; 简单的print globalA当然能输出来变量globalA的地址以及这个地址中的值,但是如果这里是一个链表,能通过编程的方法把这里的数值给d
阅读全文
摘要:在systemstap中自定义函数 Embedded C can be the body of a script function. Instead enclosing the function body statements in { and}, use %{ and %}. Any enclos
阅读全文
摘要:Add device driver. prop=value sets driver properties. Valid properties depend on the driver. To get help on possible drivers and properties, use -devi
阅读全文
摘要:Define a new drive. This includes creating a block driver node (the backend) as well as a guest device, and is mostly a shortcut for defining the corr
阅读全文
摘要:我sudo loop发现啊大家就都是root了,那么这和我直接用root起有啥区别呢? root 3826 0.0 0.1 56596 3984 pts/2 S+ 12:51 0:00 sudo ./looproot 3827 99.9 0.0 4220 640 pts/2 R+ 12:51 3:2
阅读全文
摘要:目前看好像是说以docker为例来看看这个权限到底是怎么来的? 可以通过在二进制上setcap得到,也可以通过函数自己用setcap得到,两种方法,docker肯定是第二种方法啊,docker中间肯定也是有一个中间进程去执行调用了setcap去set自己得到的,这个时候这些set的标志就不在要执行的
阅读全文
摘要:文件系统中包括实际的磁盘中可读可写的。 容器中看到的设备是啥子呢?--docker qemu也是一样,在qemu中添加一个设备的物理意义是啥子嘛 其实设备也没啥好新奇的,不就是一个普通的文件么,然后在这个文件上读和写。好 那qemu怎么来引入设备呢?docker里是很简单的一切都是主机的模拟,/de
阅读全文
摘要:capacilities是docker 中对docker权限设置的重要方面; http://blog.csdn.net/wangpengqi/article/details/9821227 上面这篇文档中有对linux capacilitys的介绍,但是还不足够 https://www.cnblog
阅读全文
摘要:比特币的疑惑,比特币拿在手里也没用 货币的有记账的本质,即便你现在拿到的钱说白了也没啥用,钱是纸,纸、雅浦岛石币、一些奇特的字符串,这些“资产”没有本质的区别。石币与比特币都有稀缺性,;同样需要付出人类劳动;交易总账都是采用分布式存储,前者是大脑记忆,后者是计算机。幸亏有了计算机,认为终于不在需要用
阅读全文
摘要:昨天又试了一下, echo 0 1000 1 > /proc/<PID>/uid_map 想着直接把一个进程的uid设置成root,这样他就可以在自己的user namespace 中为所欲为了 echo是成功了,但是进程在 touch文件时,创建的文件在ns里看是root的,等到退出来,发现仍然是
阅读全文
浙公网安备 33010602011771号