说在前面:
- 端口:"端口"是英文port的意译,可以认为是设备与外界通讯交流的出口。端口可分为虚拟端口和物理端口,其中虚拟端口指计算机内部或交换机路由器内的端口,不可见。例如计算机中的80端口、21端口、23端口,Linux系统里的22端口(今天就说说这个)。
- 1.周知端口(Well Known Ports)
周知端口是众所周知的端口号,范围从0到1023,其中80端口分配给WWW服务,21端口分配给FTP服务等。我们在IE的地址栏里输入一个网址的时候是不必指定端口号的,因为在默认情况下WWW服务的端口是“80”。
网络服务是可以使用其他端口号的,如果不是默认的端口号则应该在 地址栏上指定端口号,方法是在地址后面加上冒号“:”(半角),再加上端口号。比如使用“8080”作为WWW服务的端口,则需要在地址栏里输入“网址:8080”。 - 2.动态端口(Dynamic Ports)
动态端口的范围是从49152到65535。之所以称为动态端口,是因为它 一般不固定分配某种服务,而是动态分配。 - 3.注册端口
端口1024到49151,分配给用户进程或应用程序。这些进程主要是用户选择安装的一些应用程序,而不是已经分配好了公认端口的常用程序。这些端口在没有被服务器资源占用的时候,可以用用户端动态选用为源端口。(好吧,水平有限,这三段都是复制自百度,,,)
前戏
- 查看虚拟机端口:输入
netstat -an
图中框起来的就是端口,而我们平时用来连接xshell
的默认就是 22 端口,后面的那一栏是端口的监听状态,我有两个22 端口是因为我VMware里有两个Linux系统(一个Ubuntu 一个Redhat)。
重点——端口转发
- 1 .VMware的端口转发设置:
端口转发的意思大概就是虚拟机的端口默认是22,但是外部想要去链接它的时候,因为他是虚拟环境,不能直接访问他自身的端口,那就需要把22端口转发到别的端口,比如刚才设置的1234 在本地访问的时候就要用本地的IP加上1234.
总结:
- 当一个虚拟机里有多个Linux系统的时候,转发的端口就不能相同,比如我把Ubuntu设置了转发到1234,那么我的Redhat就不能继续用1234(可以用4321),但是虚拟机的默认端口22不能改。
- 亲测有效:甚至可以把转发的端口设置成默认端口22 。
- 对于virtualbox的转发也是一样的操作 ,换汤不换药。