Chinaunix

标题: 如何以“\\ip地址”的方式访问公网上的一台Linux服务器 [打印本页]

作者: lzzandlh    时间: 2006-01-19 10:07
标题: 如何以“\\ip地址”的方式访问公网上的一台Linux服务器
如何以“\\ip地址”的方式访问公网上的一台Linux服务器,samba好像只是针对与同一网段的,跨公网的话,如何实现呢?
作者: llzqq    时间: 2006-01-19 10:31
原帖由 lzzandlh 于 2006-1-19 10:07 发表
如何以“\\ip地址”的方式访问公网上的一台Linux服务器,samba好像只是针对与同一网段的,跨公网的话,如何实现呢?


跨网无法实现。
作者: lzzandlh    时间: 2006-01-19 10:42
原帖由 llzqq 于 2006-1-19 10:31 发表


跨网无法实现。


采用什么方式才能实现呢?因为应用程序只支持“\\ip地址”的路径。谢谢!!!
作者: platinum    时间: 2006-01-19 10:48
我只知道 Windows 可以,不知道 Linux 行不行,也不知道为什么不行
如果是走协议的话,我认为没有道理不行啊
作者: lzzandlh    时间: 2006-01-19 10:53
windows走的什么协议?
作者: platinum    时间: 2006-01-19 11:00
7 层是 NETBIOS
4 层是 TCP/139 和 TCP/445,以及 UDP/135 等
作者: lzzandlh    时间: 2006-01-19 11:01
标题: 回复 6楼 platinum 的帖子
NETBIOS是windows开发的协议,linux不支持也很正常,难道就没有别的方法以“”\\ip地址”方式访问了?
作者: lzzandlh    时间: 2006-01-19 11:30
如果能通过加装额外的软件使得通过“\\ip地址”的方式访问也可以,有这样的软件吗?
作者: platinum    时间: 2006-01-19 11:36
用 smbmount 可以吗,就是 mount -t smbfs 这种方法?我没试过,你试试看?
作者: lzzandlh    时间: 2006-01-19 11:39
标题: 回复 9楼 platinum 的帖子
客户端都是windows XP,应用程序是安装在windows下的,我只是把需要用到的图片放在了公网的一台linux上,分公司的同事都说看不到图片
作者: lzzandlh    时间: 2006-01-19 13:42
我想既然在windows系统下可以,那就可以做个NAT映射,映射到一台内网里的windows系统的机器上,公司的linux 服务器做网关,提供上网服务的,所以我在linux服务器里添加了几条iptables:
iptables -t nat -A PREROUTING -p tcp --dport 139 --to-destination 192.168.0.140
iptables -t nat -A PREROUTING -p udp --dport 138 --to-destination 192.168.0.140
iptables -t nat -A PREROUTING -p udp --dport 137 --to-destination 192.168.0.140
我系统通过这样的改动使得访问外网地址时能自动映射到192.168.0.140这台windows的机器上,可是还是不行。不知道是添加的几条rules不行,还是这种方法本身就不可行?
作者: lzzandlh    时间: 2006-01-19 17:06
我找了一台公网上的windows服务器,通过“\\ip地址”的方式怎么也访问不了啊?
作者: bingosek    时间: 2006-01-20 13:49
我个人觉得是防火墙,nat路由器,ISP的问题,如果在这些地方给block住了,服务当然提供不了
作者: platinum    时间: 2006-01-20 17:55
如果 telnet IP 139 有响应,就证明网络是没问题的,剩下的就是排服务配置的错误了
就怕像 bingosek 兄所说的,防火墙等给 TCP/139 禁掉了
作者: llzqq    时间: 2006-01-20 19:19
INTERNET上的ROUTER不许NETBISO协议通过。
作者: platinum    时间: 2006-01-21 19:36
原帖由 llzqq 于 2006-1-20 19:19 发表
INTERNET上的ROUTER不许NETBISO协议通过。

默认情况不会做限制的,除非有特殊限制,当初我们曾经“\\IP\C$”的方式进入过某个 ICP 里面的某个机器
不过也可能各个不同地区有不同限制,比如有的地区不让 ping,有的地区的 DNS 也不让 ping,有的地区 TCP/139 出不去等
作者: llzqq    时间: 2006-01-21 19:40
INTERNET骨干路由器一般都禁止137,138,139通过,这样做可以限制一下通过这些端口转播病毒。
作者: platinum    时间: 2006-01-21 19:42
原帖由 llzqq 于 2006-1-21 19:40 发表
INTERNET骨干路由器一般都禁止137,138,139通过,这样做可以限制一下通过这些端口转播病毒。

恩,这么说也有可能,我访问的那个 ICP 也在北京,也是网通线路,也许我和他之间没过骨干路由器
作者: lzzandlh    时间: 2006-01-23 10:49
如果利用网络上的存储空间呢?比如说网络硬盘等方式,只要能采用“\\ip地址”的方式访问就行,不知道这个想法可行不可行?
作者: ivyharry    时间: 2006-01-23 23:18
think u can try make a file server
and has http service on that server
then u can post all the pic by using the URL

u dont even need a domain name for this server
just like

http://xx.xx.xx.xx/folder/pic.jpg

hope this will help

[ 本帖最后由 ivyharry 于 2006-1-23 23:19 编辑 ]
作者: diedream0000    时间: 2006-01-24 08:29
标题: 为什么不行~
不能访问应该是有其他的限制,和samba服务本身应该没有关系。
跨网段的访问,在我所工作的环境中是经常性的。没有什么问题。
作者: lzzandlh    时间: 2006-01-24 09:25
原帖由 diedream0000 于 2006-1-24 08:29 发表
不能访问应该是有其他的限制,和samba服务本身应该没有关系。
跨网段的访问,在我所工作的环境中是经常性的。没有什么问题。

你的工作环境是跨公网吗,而且不是一个网段?我觉得应该是前面谈论的公网上的route不允许NETBIOS协议通过所致。但是,我在宽带路由器上设置了DMZ区,映射到了内网的一台机器,在公网就可以使用“\\ip地址”的方式访问。我忘记了访问的那台机器的ip与宽带路由器动态获取的ip是否在同一网段,有条件的朋友可以试一下,把结果贴上来。

[ 本帖最后由 lzzandlh 于 2006-1-24 09:40 编辑 ]
作者: lzzandlh    时间: 2006-01-24 09:27
原帖由 ivyharry 于 2006-1-23 23:18 发表
think u can try make a file server
and has http service on that server
then u can post all the pic by using the URL

u dont even need a domain name for this server
just like

http://xx.xx.x ...


程序只能使用“\\ip地址”的方式,如果可以使用http或ftp的话就简单多了。
作者: rcazy    时间: 2006-01-24 13:35
可的先对公网上的机做NFS,然后在本公司内的服务器上连上再做成SAMBA就可了,已在本人公司内应用中
作者: wwy    时间: 2006-01-24 14:16
为什么不能? 天天在用
是别的限制吧
作者: fwizard    时间: 2006-01-29 22:19
感觉应该是路由或者防火墙的问题,虽然我没把自己的共享放在外网过,但是我还是看到不少可以共享的
作者: GuruKiller    时间: 2006-01-30 00:17
提示: 作者被禁止或删除 内容自动屏蔽
作者: goodcjh2005    时间: 2006-02-03 18:27
标题: 一般可以
一般可以
作者: loveKDE    时间: 2006-02-03 19:12
原帖由 platinum 于 2006-1-19 11:00 发表
7 层是 NETBIOS
4 层是 TCP/139 和 TCP/445,以及 UDP/135 等

应该不可以实现了
作者: wolfpack.slo    时间: 2006-02-04 13:28
客户端都是windows XP,应用程序是安装在windows下的,我只是把需要用到的图片放在了公网的一台linux上,分公司的同事都说看不到图片


我晕,早点说你想作什么不就好了,共享文件为什么一定要用\\ip地址 这种方式呢?
ftp,web 都可以让同事透过internet访问你的文件啊,用\\ip地址 这种方式只是M$的局域网内部共享的方式。
作者: lipeng21cn    时间: 2006-02-04 18:43
都是可以的,只不过445 135端口经常出现安全隐患,ISP或IDC通常封掉这两个端口,其实是可以直接访问的
作者: zzzzzjjjjj    时间: 2006-02-06 11:47
我只是用公网服务器挂载上了内网的smb服务器共享。用iptables把出去的端口137.....445都给改掉,要不这些端口通不过路由
作者: lovepl    时间: 2006-02-06 12:45
原帖由 lzzandlh 于 2006-1-19 10:53 发表
windows走的什么协议?


2000以后就是CIFS,linux不支持是很正常的
作者: richard_j    时间: 2006-02-10 14:53
标题: 想法很好,如果真能实现就更好了
这个问题目前对我来说还有点难,不过我会继续关注
作者: yeahlong    时间: 2006-02-12 19:49
两个机器不在一个网段我从来没有用\\ip地址的方式访问成功过
作者: robert2000    时间: 2006-02-13 15:45
不..
作者: sypergood    时间: 2006-02-17 09:10
两端分别启动NFS服务和SAMBA服务,一端做服务,一端做客户,内部网用samba服务,在公网上用nfs,我这边测试正常。只不过需要两个外网IP地址。
作者: yyf_007    时间: 2006-02-17 15:08
跨子网(例如,通过路由)资源浏览,你需要作以下事情。

  1.所有希望被浏览的的计算机应该使用一个单个的WINS服务器(Samba或NT可以作到这点)

  2.每个子网的master brower必须不是NT就是samba。(win9x不能正常地跨子网工作通讯)

  3.你必须将所有子网的workgroup名字都设成一样的。这并不需要非常严格地遵守,但是这是保证成功的最简单的方式之一。如果你不能遵守这一条,那么你必须组织一种可以连接两个网络的方式,它可以由两种方式实现:

  (1)每个browse master注意到在同一广播域中其它的borwse masters的workgroup的描述(2)每个非win9x的browse master要接触全部workgroup的DMB(常用的有:将主域控制器或一个samba服务器标记为domain master),并且周期性地交换browse 信息。

  当然,其它用户指出,cisco的路由器可以通过一种方式被设置成解析SMB的交流,并允许浏览。它的建议是将SMB主机的路由接口设置成:

ip helper-address x.x.x.x


  这里x.x.x.x是这台SMB服务器的IP地址。




欢迎光临 Chinaunix (http://bbs.chinaunix.net/) Powered by Discuz! X3.2