我想了解TCP / IP堆栈中的应用层协议。 我知道,HTTP和DNS协议都停留在顶层(应用层)。 所以,当一个浏览器想访问一个资源时,它必须向HTTP服务器发送一个请求,例如: GET www.pippo.it/hello.htm HTTP/1.1 按照HTTP协议的规则提出请求,它使用页面URL而不是IP地址。 我知道DNS请求是必要的,以将URL转换为IP。 所以我的问题是:HTTP调用DNS协议? 对我来说似乎是不可能的,因为两者都是顶层协议(所以DNS不能为HTTP提供服务)。 以同样的方式,甚至TCP(在较低级别上)也不能要求更高级别的协议(如DNS)提供服务。 那么DNS请求何时发生? 谁来执行这样的请求?
我很难理解pipe理机构如何分配IP地址,公司使用BGP来通告这些IP,以及互联网如何工作。 那么,DNS到底在哪里呢? 任何人都可以提出一个很好的阅读这个东西是如何工作的? 我想我有几个问题。 首先是ARIN(或任何其他pipe理机构)是否真的很重要? 如果他们不在身边,会不会有混乱? 当他们分配一个块,他们不正常地分配它? 你必须使用BGP来做广告,纠正? 我一直习惯于已经路由IP的封闭式主机环境(专用/共享)。 那么,DNS如何进入? 与我的注册商,我能够注册一个DNS服务器(eNom) – 这实际上是什么意思? 我已经安装了绑定,并做了所有的工作,我运行我自己的DNS服务器,但他们注册该DNS服务器? 我只是不明白。 我觉得这是我应该知道的,我不知道,而且我感到非常沮丧。 这就像..简单..互联网如何工作? 从分配IP到公司路由,以及DNS。 我想我有一个例子 – 我有这个IP空间让我们说158.124.0.0/16(示例)。 该公司有158.124.0.0/17互联网面临。 (首先,公司为什么要分配IP块,然后不使用它们,为什么不使用保留的内部空间10.x和192.x?)。 所以,那就是我所在的地方。 我该怎么做才能在互联网上获得这些IP并可用? 假设我在芝加哥有一个数据中心,在纽约有一个数据中心。 我无法上传图片,但我可以在这里链接: http : //begolli.com/wp-content/gallery/tech/internetworkings.png 我只是想了解从IP块分配到使用BGP的公司(获得公共AS#?)以及DNS如何发挥作用? 我的照片会是什么样子? 我试图把一个场景放在一起,不知道我是否做得很好。
Windows中默认的TCP连接超时是什么? 有一个registry项来configuration它或它的dynamic设置?
作为系统pipe理员,我应该了解OSI模型 ? ( Rec X.200 ) 简而言之,层是什么,他们做什么? 我在日常工作中需要了解多less? 这与TCP / IP模型有何不同? ( RFC1122 ) OSI模型是否仍然适用于今天的networking?
好吧,这正在爬我 – 我看到这些约1500-2500: root@wherever:# netstat Proto Recv-Q Send-Q Local Address Foreign Address State tcp 0 0 localhost:60930 localhost:sunrpc TIME_WAIT tcp 0 0 localhost:60934 localhost:sunrpc TIME_WAIT tcp 0 0 localhost:60941 localhost:sunrpc TIME_WAIT tcp 0 0 localhost:60947 localhost:sunrpc TIME_WAIT tcp 0 0 localhost:60962 localhost:sunrpc TIME_WAIT tcp 0 0 localhost:60969 localhost:sunrpc TIME_WAIT tcp 0 0 localhost:60998 localhost:sunrpc TIME_WAIT […]
我已经看到了HTTP请求的文本表示是什么,但是DNS请求是什么样的? 数据中的哪个位置是您尝试查找的URL的位置? 另外,如何格式化回应?
我们的IT服务公司正在提出一种networking重新configuration,在内部使用IP范围10.10.150.1 – 10.10.150.254,因为它们使用制造商的默认值192.168.1.x声明当前的IPscheme是“使其易于开发”。 这是真的? 如何知道/不知道内部IPscheme使networking更易被利用? 所有内部系统位于SonicWALL NAT和防火墙路由器的后面。
我们今天的HAProxy虚拟机有一个小小的故障转移问题。 当我们挖掘它时,我们发现这一点: Jan 26 07:41:45 haproxy2内核:[226818.070059] __ratelimit:10个callback被抑制 1月26日07:41:45 haproxy2内核:[226818.070064] Out of socket内存 1月26日07:41:47 haproxy2内核:[226819.560048] Out of socket内存 1月26日07:41:49 haproxy2内核:[226822.030044] Out of socket内存 其中,通过这个链接 ,显然与net.ipv4.tcp_mem低默认设置有关。 所以我们将它们的默认值增加了4倍(这是Ubuntu服务器,不确定Linux的风格是否重要): 当前值是:45984 61312 91968 新值是:183936 245248 367872 之后,我们开始看到一个奇怪的错误消息: 1月26日08:18:49 haproxy1内核:[2291.579726]路由哈希链太长! 1月26日08:18:49 haproxy1内核:[2291.579732]调整你的secret_interval! 嘘.. 这是一个秘密! 这显然与/proc/sys/net/ipv4/route/secret_interval ,默认为600,并控制周期性的刷新路由caching secret_interval指示内核多频繁地吹走所有路由哈希条目,而不pipe它们是多么新/旧。 在我们的环境中这通常是不好的。 每当清除caching时,CPU将忙于重build每秒数千条logging。 然而,我们设置这个每天运行一次,以防止内存泄漏(虽然我们从来没有)。 虽然我们很乐意减less这种情况, 但build议您定期删除整个路由caching ,而不是简单地将旧值从路由caching中移出的速度更快。 经过一番调查,我们发现/proc/sys/net/ipv4/route/gc_elasticity这似乎是保持路由表大小的更好的select: gc_elasticity可以最好地描述为内核在开始使路由哈希条目过期之前将接受的平均存储桶深度。 这将有助于维持活跃路线的上限。 我们将弹性从8调整到4,希望路由caching修剪更加积极。 secret_interval不适合我们。 但是还有一些设置,不清楚哪一个是真正正确的方法。 / proc […]
我们的networking给出了一个错误,说有IP地址冲突,我想找出所有的设备IP地址。 (我以前也需要这个)。 (更新/澄清:我也在寻找一个基于Windows的。) 有什么build议么? 我已经阅读了各种工具(Look @ Lan,Angry IP Scanner)的build议,并且正在寻找使用这些工具或其他工具的人的build议。
有人可能请向我描述在服务器(Ubuntu,FWIW)上设置服务时使用Unix套接字文件与tcp / ip localhost:端口的优缺点吗? 在这个特定的实例中,它是一个Python WSGI服务器(uWSGI),但我只是对一般感兴趣(例如,我知道你可以在两种方式设置MySQL)。 我意识到,使用tcp / ip意味着服务可以暴露给其他机器,但我只是有兴趣在本地访问服务时是否有任何性能折衷。 干杯。