网络 - 各种宽带办理商, 如何理清楚它们之间的从属关系 ?
问 题 实际现象 今天在整理东西的时候, 不经意间看了看自己办理的宽带的合同, 突然发现上面和我签订合同的乙方, 竟然不是电信, 而是一个没有听过的公司:http://www.tianyancha.com/com... 我一直以为自己的宽带是电信宽带, 那么对应的, 和我签订合同的应该是电信( 而不是什么莫名其妙的公司 ) 然后去ipip上查了自己的出口ip ( ipip的准确度应该是可以信赖的 ), 信息如下 您当前的IP:183.193.25.107 中国上海 移动 如下问题: 在中国, 实际拥有宽带的有电信, 联通, 移动, 对不对 ? 其他的乱七八糟的宽带分类, 它们是不是相当于"二次销售" ? ( 从1中的3个运营商那里批发, 然后出售 ) 接2, 既然如此, 为何2中的宽带可以做到" 比一级运营商的宽带费用还便宜 " ? ( 同等变量条件下 ) http://www.tianyancha.com/com... 这个公司,
152 2022-07-19
编程技术问答社区
python - Shadowsocks为什么不使用多线程来处理连接呢?
问 题 最近在读 shadowsocks 的源码,有一些疑惑。 shadowsocks 每次通过 epoll 监听到新连接之后,程序都会阻塞一段时间去执行 on_remote_read() 或 on_remote_write() 来传输数据,数据传输完毕之后才会再次调用 epoll 并 accept 新的 socket 连接,当连接达到一定数量之后,会出现高延迟、低效率的情况啊 # 在知乎上问了这个问题,没人理只好来 SegmentFault 啦~ 解决方案 因为这个过程是高CPU、高内存的操作,而非高硬盘IO的操作,也就是说,这个过程考验的是CPU性能。而我们知道,计算机了没有真正的多进程或是多线程,都是通过CPU调度模拟出来的。那么对于高CPU的操作,最好就是用单进程或者单线程的方法来处理(多核心可考虑增加),这样才是最高效的办法,因为这样避免了线程或进程来回切换带来的消耗。 这块可以参考Nginx的架构,Nginx的高负载也是在单进程中完成的。
358 2022-07-19
编程技术问答社区
网络 - hosts文件与浏览器header中的host的异同
问 题 感觉自己对这一块理解不够透彻,Google了一下没有找到比较好的资料,所以提出问题问一下,希望有人能回答,谢谢! 解决方案 hosts文件影響本機的域名解析, 用在實際TCP連接到服務器之前 Host header是HTTP請求的一部分, 只在應用層有意義, 用在連接到服務器之後 簡單地說絕大部分時候沒關係, 可能的最強的關係是 (當域名被hosts文件而不是DNS服務器解析時) 會含有相同主機名, 談不上"同". 可以找些 "當在瀏覽器中輸入URL時發生了什麼" 這樣的文章看
308 2022-07-19
编程技术问答社区
网络 - ARP回应包是广播包还是单播包?
问 题 对于ARP包,默认是广播包,因为它的目的MAC地址为ff:ff:ff:ff:ff:ff,所以会给局域网中的所有主机发送ARP包。 但是ARP回应包是单播包还是广播包呢?最好能提供些解决问题的依据,谢谢! 解决方案 在公园里有一群人,你要找到A,但是你不认识A长什么样,于是你对人群大喊:A是谁? A只会回应你,我是‘A’。 ARP解析也是如此。
456 2022-07-19
编程技术问答社区
《计算机网络》中一道习题
问 题 《计算机网络》中一道习题:仔细检查收到的电子邮件,查找由使用.edu电子邮件地址的用户发送的报文首部。从其中首部,能够确定发送该报文的主机的IP地址吗?对于由gmail账号发送的报文做相同的事。 答案是.edu可以看到IP地址,gmail账号看不到gmail地址。 请问这是为什么呢? 解决方案 应该是早期gmail不提供SMTP发送邮件服务,用户发邮件都是登录Web页面,这样因为从用户到Google之间没有SMTP投递,所以没有用户自己的IP地址的头部。
208 2022-07-19
编程技术问答社区
网络 - 计算机B怎么通过计算机A连接到互联网?
问 题 计算机A可以通过无线网卡连接到互联网 计算机A通过以太网卡,使用双绞线和计算机B的以太网卡连接上之后,可以通信 计算机B只有以太网卡,没有无线网卡 现在只有计算机A、计算机B、双绞线 怎么配置能使计算机B连接到互联网 解决方案 计算机A的以太网卡配置为DHCP 计算机B的以太网卡配置为DHCP 计算机A设置互联网共享
214 2022-07-19
编程技术问答社区
网络 - post提交数据表单,请问数据包在路上有没有被加密
问 题 因为我在f12里看到,当我Post表单的时候,formdata里的username和Password都是明文的,那么,这个数据传输出去以后,在路上的时候到底有没有被加密? 解决方案 没有加密, 明文传输的 比如你在POST提交表单时, 数据按HTTP协议封装成http报文, 计算机把该http报文直接交付给下层tcp协议,tcp协议通过三次握手建立与目的主机的通信, 把该数据包交付下层IP协议, IP协议把数据包封装成IP数据包从而交给下层数据链路层传输到目的主机。 当你使用https是, 数据在传输过程中是经过加密的, 若使用https, 则数据包在交付给TCP协议前, 会先把数据交给位于http和tcp中间的ssl, 数据包先经过ssl按特定加密, 在传输给下层协议 所以理论上说, https协议是安全的
220 2022-07-19
编程技术问答社区
网络 - 网址前的www到底什么作用
问 题 比如www.baidu.com , 和 baidu.com , 有网友说www是主机名,我不知道是什么意思, 我只知道com是一级域名,baidu是二级域名,那么www是三级域名吗?是主机名吗?不好意思,我真不知道,希望可以解答一下,十分感谢! 解决方案 baidu 是域名 .com 是域名后缀 完整的域名是 baidu.com 相同的域名 不同的域名后缀 组合起来是不同的域名 如 baidu.cn、baidu.tv 购买者不一定是百度 www 是主机名 随意填写 域名解析的时候填写主机记录和记录值 (服务器 IP 或域名) 意思是将 www.baidu.com 解析到哪 不同的主机名可以解析到不同的 IP *.baidu.com 都属于 baidu.com 如 tieba.baidu.com 是 baidu.com 的子域名(二级域名) 属于百度
328 2022-07-19
编程技术问答社区
网络 - 下载文件时会莫名被改成从另一个IP上下载,该如何解决?
最近在自己的 VPS 上建了个文件用于测试下载速度,结果发现文件下载链接有问题,原本文件链接是 http://xxx.xxx.xxx.xxx/data.bin,结果下载时却变成了 http://101.110.118.72/xxx.xxx.xxx.xxx/data.bin。 这个 IP 为 101.110.118.72 服务器像是成了中介一样,难道我之前的上网记录都被它跟踪了?该如何解决这一问题?
200 2022-07-19
编程技术问答社区
java-web - 部署的网站无法访问,ip无法ping通
问 题 一个朋友买了一个公网ip用来部署网站,但是从其它地区却ping不通这个ip,也无法访问这个ip上的javaweb网站,但能够ping通这个ip的网关,要怎么办?是不是要运营商在路由器上设置规则? 解决方案 有的运营商是禁止ping ip得。绑定个域名试试。
214 2022-07-19
编程技术问答社区
node.js - 服务器80端口问题
问 题 本地用node.js创建一个服务监听80端口,我在浏览器访问比如:www.baidu.com 在node.js里log不出req.headers。而访问127.0.0.1就能获得headers。 是不是服务是本地的,必须要本地访问,而访问www.baidu.com是访问百度的服务器。但都是通过80端口了,不清楚其原理为什么?(求大神指导。) 这个问题已被关闭,原因:问题已解决 - 问题已解决,且对他人无借鉴意义 解决方案 你访问百度的80端口,这个80端口是对方的。本地是分配了一个动态端口去连的。 本地开放的80端口是监听“别人”的连接,当别人访问你的IP时(当然也包括你自己访问自己的反射性IP [::1]),连接的是你的80端口
200 2022-07-19
编程技术问答社区
android - 如何自动完成软件的签到
问 题 学校搞了一个签到软件,很烦。尤其是没有签到第二天按还要找辅导员。所以想问一下有什么办法可以自动签到。我是这样想的,签到的时候应该是发出了一个网络请求吧。可是,我该怎么得到那个网络地址呢?也许我第一步就想错了。。希望大神指点一下 。 解决方案 在签到时候,抓包解析,发请求
134 2022-07-19
编程技术问答社区
python - socket发送的信息怎么在浏览器中显示出来
问 题 用socket模块建立的socket服务端,比如监听了本地的4399端口。用浏览器连接,但是显示不了socket发来的字符。 这该怎么办? 解决方案 因为你的端口不是80, 所以浏览器没法用http协议去解析你的请求, 因为它不认识4399是干嘛的, 所以如果你想用监听4399,并且用浏览器看到socket服务端发送的消息, 你就必须自己构建http报文 import socket s = socket.socket(socket.AF_INET, socket.SOCK_STREAM) # tcp 报文 s.bind(('localhost', 4399)) s.listen(2) req, req_info = s.accept() req.recv(65549) # http协议头是文本形式, 以\r\n作为每个字段的分隔, 最后头部以\r\n结束, 所以我们主要构造好 http头, 浏览器就能识别的, 接下来的正文, 就能按照html的标准
186 2022-07-17
编程技术问答社区
网络 - 同一台电脑65535个端口真的够用了吗?
问 题 未来有没有可能改进协议,让端口大于这个数字。 解决方案 65535个端口还不够? 全球现有的IPv4地址一共有2的32次方个。 理论上: 两台互联的电脑之间,使用不同端口,最多可以建立 65535*65535 个TCP/IP连接。 同1个端口(例如都使用80),一台电脑最多可以和全世界所有联网设备建立 2的32次方 个TCP/IP连接。 你要说IP不够用,现在有IPv6了,端口什么的,真心够用了。 监听一个端口,至少需要1个线程吧。 一般的电脑,据说几千个线程,操作系统连线程的调度都会很卡,根本用不到这么多端口。 Update at 20170620: 来来来,不服就踩,毕竟只敢匿名玩的辣鸡。 总结答案,别说65535个端口,即使只有1个端口也够了。 在协议完善,复用充分的情况下,可以实现无限量的通信需求。 同理,你要觉得操作系统1个进程不够用,用一个进程开个虚拟机,爱怎么玩怎么玩。 回复评论: Q1 监听1个
776 2022-07-17
编程技术问答社区
网络 - 重装Ubuntu 16.04 之后eth0怎么不见了?
问 题 重装Ubuntu 16.04之后eth0不见了,之前都有的,输入ifconfig -a的结果如下: enp5s0 Link encap:Ethernet HWaddr 28:d2:44:98:e8:d8 inet6 addr: fe80::edad:34e9:52a2:790f/64 Scope:Link UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:1303966 errors:0 dropped:12 overruns:0 frame:0 TX packets:243162 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:314699523 (314
394 2022-07-17
编程技术问答社区
linux - Ubuntu网络代理设置中Automatic的URL应该怎么填?
请问这里是不是应该填一个在线PAC的URL?是的话请问应该怎么填或者在线怎么找?不是的话这里应该填什么URL? 我用的SS的方式上网,在Windows下使用Shdowsocks-R客户端直接有本地PAC文件可以使用,但我在Ubuntu下使用的时候,发现Automatic只能通过URL的方式。求解?
2214 2022-07-17
编程技术问答社区
python - flask是如何处理多个访问请求的?
问 题 假设服务器跑着这样一段简单的flask代码: app = Flask() @app.route('/') def index(): return render_temple('index.html') 这时候服务器来了两个访问请求,这两个请求都被路由到@app.route('/'). 请问flask是如何同时处理这两个请求的 ? 如果我的代码没有实现任何并发功能,flask会自动帮我处理并发请求吗 ? 如果有Nginx这类HTTP服务器,情况又是怎样? 希望各位能指导下,给个解答或者指明下学习方向都行 ! 万分感谢 ! 解决方案 这段程序只是一个APP服务的一个路由。你的APP服务又被用WSGI接入到HTTP服务器,就是你说的nginx。这个问题跟nginx无关,因为这里它只是一个通道。跟Flask也无关,因为它只是负责根据Request产生Response。有关的就是WSGI server。通常来讲WSGI server是通过
586 2022-07-17
编程技术问答社区