使用VirtualBox实现端口转发,以SSH与Django为例
先来认识几个概念
(1)IP地址:又称为互联网协议地址,是计算机的物理地址,相当于计算机的编号,是32位的二进制数,通常被分割成4个8位的二进制数;
(2)端口:指设备与外界通讯的接口,一台计算机的端口数为65536个,按类型可以分为周知端口、注册端口和动态端口三种;
(3)socket:套接字,是一个基于TCP/UDP的接口。网络上的两个程序通过一个双向的通信连接实现数据的交换,连接的一端称为socket服务端,另一端称为socket客户端;
(4)socket服务端:接收客户端数据,需要绑定IP与端口,其中IP为允许连接进来的IP地址,设置为"0.0.0.0"表示允许任意IP访问,端口为socket服务端的端口,客户端连接的端口需要与该端口相一致才能访问;
socket客户端:向服务端发送数据,需要连接IP与端口,其中IP为客户端IP地址,端口必须与socket服务端绑定的端口一致,否则无法连接,此外客户端的端口是注册端口,由系统随机分配。
客户端想要与服务端连接,则先要知道服务端的端口是多少,才能建立连接。虚拟机相当于socket服务端,本机相当于socket客户端,通过设置端口转发实现本机与虚拟机的交互,就要先知道虚拟机的端口,这些端口有的是周知端口,如SSH的端口为22,有的是注册端口,这些端口需要先设置。下面分别以ssh和虚拟机上的Django为例,分别使用VirtualBox实现端口转发
(1)使用VirtualBox实现SSH端口转发
这里我把主机端口设为"1234",主机端口只要没使用过,可以设置1024-49151中的任意一个数。
步骤:点击"设置"—>选择"网络"—>"网卡1"—>"高级"—>"端口转发"—>点击"+"新建规则—>名称:SSH,协议:TCP,主机端口:1234,子系统端口:22

(2)使用VirtualBox实现Django端口转发
在虚拟机中安装Django,此时Django相当于socket服务端,浏览器相当于socket客户端。创建项目后,由于Django的端口是注册端口,因此需要先设置端口开启服务,在项目目录下执行命令
·python python manage.py runserver 0.0.0.0:6969
注意:"0.0.0.0"表示任意IP地址都可以访问,"6969"表示虚拟机端口,对应端口转发规则里的子系统端口。
接着设置Django端口转发,这里把主机端口设为"8000"
步骤:点击"设置"—>选择"网络"—>"网卡1"—>"高级"—>"端口转发"—>点击"+"新建规则—>名称:Django,协议:TCP,主机端口:8000,子系统端口:6969

设置好Django端口转发后,在本地打开浏览器,输入IP地址和服务器端口:127.0.0.1:8000,就可以访问设置的Django服务器
使用VirtualBox实现端口转发,以SSH与Django为例的更多相关文章
- 【VirtualBox】端口转发,ssh
端口转发 VirualBox的设置 - 网络 - 端口转发 里面有主机IP.主机端口.子系统IP.子系统端口 设置后的含义是:当外部访问主机IP:主机端口后,将会把访问映射到虚拟机的子系统IP和子系统 ...
- 使用VirtualBox进行端口转发 连接数据库
转自 http://blog.sina.com.cn/s/blog_484d87770102uxi6.html 使用VirtualBox很久了,很多用法都没有深钻,真的是不虚心学习啊. 由 ...
- 【端口转发】k8s port-forward端口转发 和 ssh -NfL端口转发
kubectl port-forward端口转发 将远程pod端口转发到本地端口 kubectl port-forward monitoring-grafana-695c545f46-rhtwc -- ...
- SSH的端口转发:本地转发Local Forward和远程转发Remote Forward
关于使用ssh portforwarding来进行FQ的操作,网络上已经有很多很好的文章,我在这里只是画两个图解释一下. 首先要记住一件事情就是: SSH 端口转发自然需要 SSH 连接,而 SSH ...
- [转] SSH原理与运用(2):远程操作与端口转发
英文:阮一峰 链接:http://www.ruanyifeng.com/blog/2011/12/ssh_port_forwarding.html 接着前一次的文章,继续介绍SSH的用法. (Imag ...
- 【转】实战 SSH 端口转发
本文转自:http://www.ibm.com/developerworks/cn/linux/l-cn-sshforward/index.html,至于有什么用,懂的懂! 实战 SSH 端口转发 通 ...
- SSH原理与运用(二):远程操作与端口转发
SSH原理与运用(二):远程操作与端口转发 作者:阮一峰 (Image credit: Tony Narlock) 七.远程操作 SSH不仅可以用于远程主机登录,还可以直接在远程主机上执行操作. 上一 ...
- SSH 端口转发
第一部分 概述 当你在咖啡馆享受免费 WiFi 的时候,有没有想到可能有人正在窃取你的密码及隐私信息?当你发现实验室的防火墙阻止了你的网络应用端口,是不是有苦难言?来看看 SSH 的端口转发功能能给我 ...
- 实战 SSH 端口转发
转自实战 SSH 端口转发 通过本文的介绍,读者可以从中了解到如何应用 SSH 端口转发机制来解决日常工作 / 生活中的一些问题.学会在非安全环境下使用端口转发来加密网络应用,保护个人隐私以及重要商业 ...
随机推荐
- hibernate之关于一对一单向,双向关联映射
[hibernate]之关于一对一单向,双向关联映射 首先我们来看,Hibernate官方对于一对一单向关联的解释: 基于外键关联的单向一对一关联和单向多对一关联差点儿是一样的. 唯一的不同就是单向一 ...
- windows脚本(VBS)之cmd命令行的妙用
windows脚本(VBS)之cmd命令行的妙用 (2009-08-06 13:40:55) 转载▼ 标签: 脚本 cmd 命令行 vbs js 简单 公式 windows it 分类: 计算机 脚本 ...
- Mahout算法调用展示平台2.1
软件版本号: windows7: Tomcat7.JDK7.Spring4.0.2.Struts2.3.Hibernate4.3.myeclipse10.0.easyui:Linux(centos6. ...
- HTML如何让IMG自动适应DIV容器大小
版权声明:本文为博主原创文章,未经博主允许不得转载.作者:沙师弟专栏 https://blog.csdn.net/u014597198/article/details/80403946HTML如何让I ...
- C++常用字符串分割方法实例汇总
投稿:shichen2014 字体:[增加 减小] 类型:转载 时间:2014-10-08我要评论 这篇文章主要介绍了C++常用字符串分割方法实例汇总,包括了strtok函数.STL.Boost等常用 ...
- bzoj4977 跳伞求生——贪心
题目:https://www.lydsy.com/JudgeOnline/problem.php?id=4977 今天讲的贪心题,真神奇啊: 首先,要得到尽量多选队友的解: 把队友按 a[i] 从小到 ...
- img标签间距问题
关于img标签间距问题:多个img之间有间距,包含img标签的div之间有间距. <!doctype html> 2 <html lang="en"> 3 ...
- thinkphp的session用法
Session方法用于Session 设置.获取.删除和管理操作. Session 用于Session 设置.获取.删除和管理操作 用法 session($name, $value='') 参数 na ...
- [转]RDLC报表格式化format表达式
本文转自:http://www.cnblogs.com/samlin/archive/2012/04/17/FormatDateTime.html 刚开始接触RDLC报表,觉得RDLC报表提供的格式化 ...
- 【HDU1698】 Just a Hook 【线段树入门】
原题:原题链接 题意:(机器翻译的...) 让我们将钩子的连续金属棒从1到N编号.对于每次操作,Pudge可以将连续的金属棒(从X到Y编号)改为铜棒,银棒或金棒. 钩的总值计算为N个金属棒的值的总和. ...