网络拓扑
图1 示例网络环境
说明: 两台PC机分别位于两个独立的VLAN上,中间有一台服务器同时连接两个VLAN,该服务器未开启ipv4_forward。
实例说明
10.4.16.1-host(Terminal-1)$ ssh -oProxyCommand="ssh -qaxT 10.4.16.156 nc %h %p" -L 3690:localhost:3690 192.168.123.100 10.4.16.1-host(Terminal-2)$ svn export svn://localhost:3690/code
上例中,通过10.4.16.156的“跳板”作用,主机10.4.16.1先SSH到10.4.16.156上,然后在10.4.16.156上执行
nc 192.168.123.100 22
注意,%h对应ssh连接的远端host地址,%p对应ssh连接的端口。默认ssh连接端口为22。
如果需要同时使用多个转发端口,可以
10.4.16.1-host(Terminal-1)$ ssh -oProxyCommand="ssh -qaxT 10.4.16.156 nc %h %p" -L 3690:localhost:3690 -L 80:localhost:80 192.168.123.100
上述命令表示,10.4.16.1连接192.168.123.100是通过由ProxyCommand所创建的一个标准输入/输出作为传 输链路,然后ProxyCommand告诉系统首先SSH连接到10.4.16.156后再执行nc命令去连接192.168.123.100。
以上过程可以简单表示为:
(1) 10.4.16.1 —-ssh——-> 10.4.16.156
(2) 10.4.16.156 —-netcat—-> 192.168.123.100
(3) 10.4.16.1 ===ssh=over=netcat=tunnel=====10.4.16.156========> 192.168.123.100
关于上述ssh命令的所有参数,请各位看官man ssh去。
原创文章,转载请注明: 转载自猪在笑 [ http://www.huangwei.me/blog/ ]
本文链接地址: http://www.huangwei.me/blog/2010/01/15/%e4%bd%bf%e7%94%a8ssh%e8%bf%9b%e8%a1%8cvlan%e7%a9%bf%e8%b6%8a/

最近评论