192.168.2.1如何访问192.168.1.1的服务器?


回答本领域的问题!作为一个专业的网络从业人员,其实觉得你的问题不够专业,你没有提供多个的信息来让大家给你出谋划策。但是作为一名有10几年工作经验的人,可以猜测你的组网,然后给你回答。第一个可能的解决办法:添加三层转发设备你说第一种情况,192.168.2.1和192.168.1.1,它们的掩码都是24位,不在同一个网段,展开就是192.168.2.1/24,192.168.1.1/24。这也是说你不专业的原因,写IP地址时,一定要把掩码加上,不然相同的IP地址可能在不同的网段。如果是这种情况,你的问题就可以简化为两个不同网段的主机如何互访?这个问题就很好解决了,中间加一个三层交换机或路由器作为网关,把它们连接起来就可以了,例如下图所示:当配置IP地址,并且打开端口以后,在路由器上就会自动生成两条静态路由,如下所示:他们之间的报文会经过直连路由转发。本方法的重点在于这两台主机的网关要配置好,另外这两台主机之间可能不止一台路由器,还有可能有其它的设备,在这些设备上都要启用路由协议,保持一路畅通。第二个可能的解决办法:修改这两台主机的子网掩码这种情况能较快的解决问题,但是不一定是你需要的。在没有子网掩码的情况下,可以认为192.168.2.1和192.168.1.1是同一个网段的,不是吗?只需要把子网掩码修改为16位,即255.255.0.0,这两台主机就在同一个网段了。他们的网络ID都是192.168.0.0/16。Win系统的修改方式如下:在这种情况下,你应该知道它们之间怎么通信的了吧?换句话说,你知道相同网段之间的主机怎么通信吗?相同网段的主机之间通信,通常有2种简单方式:如果这两台主机相距很近,最简单的办法就是通过网线直连,它们之间就可以通信了。如果两台主机不在同一个地方,相距比较远,就需要在它们之间加上二层交换机了,把它们接在同一个VLAN里,那么它们也就可以通信了。综上所述,要想它们之间进行通信,首先要做的,就是弄清楚它们的子网掩码。只有搞清楚子网掩码,才好设计不同的方案。不然大家靠猜测,就会有很多不同的理解。我对上面的两种方法在做一下简单的总结:将两台主机的掩码修改为16位,直连或者通过二层交换机通信;两台主机的掩码是24位,它们之间通信通过三层交换机或路由器,通过路由来转发。当然也还有很多其它不同的方法,例如单臂路由等,需要与实际环境所使用的设备结合起来。如果还有问题,可以留言讨论,并且欢迎关注我的头条号,一起讨论网络知识!

这个问题我来解答一下,顺便说一下网络访问的基本原理我们的PC机访问网络地址,主要分两种情况,一种是局域网内部的访问,一种是局域网外部的访问局域网内部的访问,就是我们访问的目的地址和自己的PC机在同一网段里。我们给PC机配置IP地址或者采用DHCP方式自动获取IP地址时,需要用到IP和掩码,IP地址和掩码是判断我们访问的目的地址是局域网还是外部网络的依据下图就是PC机上查到的地址,192.168.0.110是主机地址,255.255.255.0是掩码,两个参数转换成二进制一与就会发现,局域网的范围是192.168.0.1到192.168.0.254。那么我们访问这段范围内的地址属于局域网内访问,访问这段地址范围之外属于外部网络访问例如,下图我要访问192.168.0.102(Ping包),此时是局域网内的访问。局域网内直接使用MAC地址(网卡的物理地址)访问。如果不知道MAC地址可以采用ARP协议获取目的PC机的MAC地址我们看看PC机上ARP表,此时发现ARP表有对应的目的地址的MAC地址,那么在局域网内就可以直接访问。PC机会把流量从网卡丢出去到下一个设备再查自己MAC表转发,通常这个设备叫交换机,交换机上可以学习到这个局域网所有PC机的MAC地址然后我能再看看访问百度,此时可以看到,百度的地址不是一个局域网地址那么非局域网地址,我们就不能通过MAC地址访问,我们要查一下路由表,如下图。路由表显示,访问百度的地址的流量需要从网关192.168.0.1转发,那么我们访问的数据包就会通过我们的网卡送到192.168.0.1这个网关设备,由这个网关设备再查路由表转发。我们把这个网关设备叫路由器,网关地址是路由器和PC机互联的接口地址。路由器上有所有不是同一网段的访问路由表所以,你这个问题的答案是,如果服务器和你在一个网段,那就通过MAC转发。你只需一台交换机,服务器和PC机都连接到交换机就可以如果你的PC机的掩码是255.255.255.0,很明显服务器和PC机都不在一个网段,那么就通过路由转发,此时买一台路由器,PC机和服务器的网关地址都是路由器上和他们用网线连接的接口地址即可

主机192.168.2.1需要访问主机192.168.1.1,因为你并没有注明这两个IP地址的子网掩码,所以这里要分两种情况解答!同一网段访问如何区分两个IP地址为同一网段呢?这就需要设置子网掩码了。子网掩码是标志两个IP地址是否同属于一个子网的。子网掩码不能单独存在,它必须结合IP地址一起使用。子网掩码只有一个作用,就是将某个IP地址划分成网络地址和主机地址两部分。如果两个IP地址在子网掩码的按位与的计算下所得结果相同,即表明它们共属于同一子网中。同一子网的计算机就可以直接进行通信,子网掩码也是32位二进制地址,其每一个为1代表该位是网络位,为0代表主机位。因此,如果我们设置这两台计算机的子网掩码都为“255.255.252.0”,可以计算出相应的子网段。192.168.2.1二进制表示为:...92.168.1.1二进制表示为:...子网掩码二进制表示为:...按位与可计算出它们的网段都为“192.168.0.0/22”。当然你也可以设置为其他的子网掩码,比如“255.255.0.0”,那么网段都为“192.168.0.0/16”,只要保证同一网段就行了。两台单独运行的同网段计算机如果要进行通信,此时它们之间可以直接拉一条网线进行连接,这样就可以相互访问实现了。当然一般情况下,计算机都是连接到交换机了,同网段主机通信,交换机的工作原理会根据MAC地址表进行数据转发了。不同网段访问这两个IP地址是“192.168”开头的其实是属于C类地址,C类地址默认的子网掩码是“255.255.255.0”。如果是这样,计算出PC1的网段为“192.168.2.0/24”,PC2的网段为“192.168.1.0/24”,它们属于不同的网段了。不同网段之间就不能直接进行二层MAC地址表转发通信了,只能采用三层路由方式去解决。这样就得依靠三层网络层的设备了,路由器它就是网络层的设备,另外像一些交换机它也是具备三层路由功能的,我们称为三层交换机。这里主要有以下几种通信方式:

1.多臂路由器实现如下图,以华为路由器为例配置各自接口IP地址作为两台主机的网关。[AR1]intg0/0/0[0/0/0]ipaddress192.168.2.[0/0/0]intg0/0/1[0/0/1]ipaddress192.168.1.两台主机连接到路由器并设置各自的网关地址,这样就可以通信了。这是因为当路由器接口IP地址配置完成后,路由器就会自动将这两个网段的直连路由加入到路由表,路由器就是通过直连路由来转发不同网段的数据包。当然,计算机一般都先接入到交换机,接各自一台交换机如下:如果接同一台交换机上的话,一般不同的网段就会划分出不同的VLAN,相当于把交换机逻辑上分成两台。

2.单臂路由器实现多臂路由器实现不同VLAN网段通信有个很大的弊端,就是太浪费路由器端口了,因为每个VLAN你都需要去占用路由器的一个物理端口作为该网段的网关,而路由器的端口往往是很有限的,许多路由器甚至只有两个端口,因此这种方式在实际工作上基本上不会用了,有没有一种做法就是使用路由器的一个物理端口去连接多个不同的VLAN,就跟交换机之间Trunk干道一样可以去承载多个VLAN,我们称这样的实现方式为单臂路由。如下拓扑所示,路由器只使用一个物理接口来互联交换机上的多个VLAN,每个VLAN网段的网关都指向路由器,路由器虽然只有一个物理接口但它可以启用子接口功能,可以把每个子接口想象成一个物理接口,每个子接口为一个单独的广播域,并且是所属网络中主机的默认网关,这样路由器上就具备了多条直连的网络,自然就可以通过路由表来转发数据报文了。

3.三层交换机实现虽然单臂路由可以节省路由器的物理接口,但是这种方式也有不足之处,如果VLAN的数量众多,不同VLAN网段间的通信流量就会很大,单条链路所能提供的带宽很可能无法支撑这些通信流量,另外如果这条链路一旦发生故障,那么所有VLAN间的通信就此中断。所以在我们实际工作中,最常用的做法是会引入一台三层交换机来实现VLAN间的通信,通过三层交换机是最经济、最快速、也是最可靠地实现VLAN间三层通信的方式。如下所示在三层交换机需要配置VLAN2和VLAN3的接口IP作为这两个网段的网关实现不同VLAN间的通信。以上就是192.168.2.1如何实现访问192.168.1.1的方法了,关于更多的网络知识内容,欢迎大家关注,谢谢~

这个不知道你的什么网路结构,如果是两个路由器级联的话,出去二级路由器的网段是可以直接访问一级路由器下的主机的!当然这是普通家庭的路由器!如果反过来那么久需要端口映射二级路由器,并且使用二级路由器的WAN口地址访问!如果是主路由器下接入两个评级的路由器,那么一般和这个操作是一样的!当然如果是交换机还可以把IP地址给子网掩码改变一些开始用,比如把默认的255.255.255.0改成255.255.0.0!

由于此问题并没有阐明清楚是在什么情况下做到这两个ip服务器之间访问,所以下面自己能通过服务器之间直接互ping、前端开发处理方式和后端开发处理方式这问题来说明。此问题直观问题就是跨网段访问的问题。首先解决两个服务器之间直接访问的问题。以liunx服务器为例,由于处于不同网段或端口不允许ping,不能做到直接访问到服务器。这里面有很多高深知识和问题,自己不是专业运维人员,只能简单讲一下处理这种问题的思路。对于跨网段的问题,可以通过添加路由方式解决,例如192.168.2.1不能ping通192.168.1.1,我们可以在192.168.2.1上执行vi/etc/rc.local;然后在文件最后一行添加routeadddefaultgw192.168.2.1;wq保存退出即可。前端项目布署的服务,由于现在前后端分离的开发方式,HTTP同源策略安全模型的问题就需要规避。因为在不同ip下的服务器,所以具体点就是跨域问题。解决跨域问题有很多方式,例如JSONP、iframe、CORS访问、Nginx反向代理等。在个人实际开发工作中,前后端分离与Vue等前端框架的流行,以及nginx的强大,使用CORS和Nginx方式最为理想。如果是后端项目布署的服务器之间访问,以java为例,可以使用使http相关类实现数据访问。例如HttpUrlConnection和HttpClient等,前题是服务器之间没做网络安全策略。如果是通过tcp方式访问服务,可以使用Socket来实现编程用于传输文件等。随着微服务的流行,类似springcloud的微服务直接就跟ip无关了,我们只需通过服务名发现就能做到直接访问。具体来说就是192.168.1.1上的微服务注册到eureka,192.168.2.1上的微服务也注册在同一个eureka集群下,2.1就可以直接通过feign框架加上1.1注册的服务名做到访问调用,而不用关心ip是多少。当然也要考虑到微服务在多实例下负载均衡的问题,因为不能保证每次访问都能击中192.168.1.1这台服务器。单实例就不说了,肯定是这一台ip服务器上服务被访问到。篇幅有限,不能做到面面俱到,其中不足之处请指出并斧正。对于此问题还有什么补充的地方,也欢迎大家积极探讨。