nextcloud+onlyoffice同局域网部署网络不通分析与解决(原创)

记录时间 2020-05-17

版本nextcloud 18.0 onlyoffice 5.5

同一个机器上安装nextcloud和onlyoffice镜像,映射到外网访问,无法通过域名配置,提示网络连接不通或文件下载失败,这个问题网络上有很多的提问,但是一直没找到答案,经过2天的分析,终于明白了失败的具体原因,和我当前的组网有关系,下面先画一个目前组网的示意图。另外需要知道这两设备有两个过程要做:1.nextcloud连接onlyoffice 2.onlyoffice到nextcloud拉取文件

第一种情况:配置onlyoffice地址为192.168.x.x

image.png

服务地址配置192.168.x.x,能正常连接也能正常访问,数据不通过外部网络,不过这时候只能局域网自己玩玩,如果从外网的某一主机连入,会出现加载服务器错误,因为这时候配置的是192.168.x.x,此时外部发起的请求,onlyoffice还是会去连接192.168.x.x地址。


image.png

第二种情况:配置onlyoffice地址外部映射地址115.xxx.xx.xx

在这个情形会出现另一种情况,在局域网内我们通过192.168.xx.xx的地址去访问nextcloud和onlyoffice的服务都是可以正常的,但是在内网通过115.xxx.xx.xx地址访问,直接会找不到服务器。这里涉及到另一个问题,就是在局域网内通过自身公网访问自己,路由器在收到这类地址的时候好像是为了安全,丢弃这类数据的,这就导致了如果给nextcloud配置onlyoffice外网地址路由器这关都过不去。配置的时候会提示连接失败,网上很少改host的方法,对路由要求太高,容易弄乱网络。


image.png

配置外网地址,在外网访问会出现文件拉取错误。


image.png

这问题在当前网络环境下难以解决,只想到了两个办法

1.在另一台云主机安装配置onlyoffice

方案一很简单,网络示意如下图


image.png

这个情形下很好理解,不过在配置的时候有一个地方需要注意,在外网时没问题,但如果通过内外访问,会出现无法拉取文件的问题,查看onlyoffice的文件错误提示(文件在docker 镜像内部/root/onlyoffice/logs/documentserver/converter/out.log里)

[2020-05-15T19:56:40.301] [ERROR] nodeJS - error downloadFile:url=http://192.168.1.110:18082/apps/onlyoffice/empty?doc=eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJhY3Rpb24iOiJlbXB0eSJ9.IFkknNDAekyomrhunK1KvdH29qv89XNNYE1vfIxvkQk;attempt=1;code:ETIMEDOUT;connect:true;(id=conv_check_1570064549_docx)

也就是说在onlyoffice是根据访问过来的地址去生成文件的下载url,如果在外部访问生成的就是外部访问的url,针对这个问题nextcloud的有一个高级配置,可以解决。


image.png

Server address for internal requests from the Document Editing Service这个值相当于是告诉onlyoffice实际的访问地址是哪个,这样能保证内网外网都可以访问使用。

2.通过sockt 端口转发来实现

这个方式实际是绕过了内网不能访问自身公网地址web的问题,在尝试连接onlyoffice时走到外网,然后转到内网的onlyoffice,onlyoffice通过内部网络拉取文件。(这里使用了rinetd,安装简单)


image.png

这个配置上有一点区别,现在的nextcloud和onlyoffice在同个内网,因此在配置Server address for internal requests from the Document Editing Service时填的是内网地址192.168.x.x,文件通过内网拉取,连接走外网。


image.png

总结:两个方法都可以,问题解决了,成本增加了,本人目前使用方法2。

补充:经过研究,有了第三种解决方案

通过在NAS内建立dns服务器,来做域名欺骗,是内网机器在使用外网域名访问时候直接翻译成内网地址,网络逻辑如下


image.png

具体的做法:
1.现在nas里安装dns server,如果是其他系统可以使用类似的软件,我用的是群晖所以直接安装了。


image.png

2.配置dns server,增加一条master区域的域名,因为用的是ddns.net的域名,加这么一条。
image.png

3.配置一个A类解析,将我真正使用的域名解析为nas的地址,这样如果在内网使用域名访问就会解析为12.168.1.110


image.png

4.启动解析服务,不需要解析的还是都送网关解析
image.png

5.为nextcloud和onlyoffice配置dns域名,指向192.168.1.110.
第一次修改的时候通过登录到docker里面修改/ect/ resolv.conf 里的地址来做,每次一重启就丢失,然后网上说的其他固定resolv的方法在docker镜像里指令都没有。后来经过研究发现docker里的这个值是直接映射宿主机的,所以直接在宿主机上加了一条dns规则。
image.png

重启后docke就能按110的地址先进行域名解析。
6.重新配置参数,按如下配置就可以。
image.png
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 211,743评论 6 492
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 90,296评论 3 385
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 157,285评论 0 348
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 56,485评论 1 283
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 65,581评论 6 386
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 49,821评论 1 290
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 38,960评论 3 408
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 37,719评论 0 266
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,186评论 1 303
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 36,516评论 2 327
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 38,650评论 1 340
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 34,329评论 4 330
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 39,936评论 3 313
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 30,757评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,991评论 1 266
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 46,370评论 2 360
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 43,527评论 2 349