Error 10054 1 in transporttcp2 readexact 2

Содержание

This article will be useful for those using Ammyy Admin as well as other remote access application users as it contains general info on remote control software which can be applied while using similar remote access applications.

It happens quite often when Ammyy Admin users ask "What is the minimum Internet connection bandwidth that makes Ammyy Admin work ok?". Usually we give an answer like this "Ammyy Admin will work with any Internet bandwidth, but the better Internet is the faster Ammyy Admin works". However, it’s impossible to identify the minimum Internet connection speed required for comfort work because there is no any standard for "comfort work" and the meaning of this term may vary from person to person. Thus "comfort work" term used in this article is nothing more than my personal opinion on the matter and you may have your own different one.

Step 1: Connection speed test

1.1. Connect to a client in "Speed Test Only" mode. The new window will show you "TCP by router: port" or "Direct TCP with ip:port" or "Direct UDP with ip:port". The 1st phrase tells the traffic is going through a router, the 2nd and 3rd mean direct traffic transfer. In most cases direct connection provides faster performance rather than connection through router thus it’s always better to establish direct connection although it’s not always possible.

1.2. First of all, make sure that client and operator have "Allow Direct TCP/UDP" box checked. Direct TCP is possible in cases when:
– Both PCs are located in one LAN, or
– One of the PCs can receive incoming TCP connections onto a certain port and this port is listed in "External TCP Port" and has "On" status.

After that click "Start". You’ll get the test results (picture 1) including:
1) Ping time min-avr-max (also called round trip time). This is time a minimal data packet spends for round-trip and reflects minimal, average and maximal time. This parameter has almost no affect on data transfer speed of a bigger size, but it’s crucial for work in remote desktop mode. Comfort work requires average time of 150ms at maximum.
2) Dnload speed – "from client to operator" bandwidth.
3) Upload speed – "from operator to client" bandwidth.


picture 1


picture 1Р°

Bandwidth is often called connection speed. In case you have Direct TCP connection the speed will depend only on Internet providers of client and operator. Ammyy Company will not be able to help you in this case. If you have TCP by router connection and the speed test results are much worse than minimal client and operator Internet bandwidth you should sort out the issue with router before writing to Ammyy tech support.

Step 2: Router check

2.1. Please open https://rl. ammyy. com/ on client side. Here you can see your external IP and country of current location. The closest router that will provide connection between operator and client will be defined based on the country. In case the country was defined wrong, please tell about it Ammyy Company. Keep in mind that this might be due to the following reasons:
– Your Internet provider gave wrong info about your IP.
– You work through a Proxy Server which is located in other country.
– Information on your IP doesn’t match in Ammyy Data Base.


picture 2

1280 x 1024 x 32 bits – desktop resolution and color depth.
4.14 ms – average time of screen capturing.
7.35ms – 2 screen frames average time of comparing. It usually depends on CPU and RAM characteristics, and doesn’t depend on the video system.

To make work comfortable the sum of the 1st and the 2nd line should not be bigger than 50 ms, and a very comfortable work implies the sum to be not more than 20 ms.

It’s remarkable that these are results of a system with disabled hardware acceleration. When hardware acceleration was turned on the test laptop showed average time of capturing increase up to 35 ms, what is by 31ms longer! It might be justified by the fact that disabled hardware acceleration makes graphic adapter use basic RAM and CPU reading speed from RAM is much higher than reading from video memory. Please, check this parameter, and in case average capturing time is too long, one has to look for a reason why graphic adapter works so slowly.

To disable hardware acceleration in Windows 7/XP, please, do the following:

1. Right click on the desktop and select Screen Resolution
2. On the window that opens up, click on the Advanced Settings link
3. Select the Troubleshoot tab, then click Change Settings
4. Move the Hardware acceleration slider towards none to reduce or turn off video hardware acceleration.
5. Click OK, and then click Restart Now.


picture 3

If UAC is enabled, it’ll require user confirmation. In some cases in windows 7 it’s impossible to turn off video hardware acceleration because video adapter and its driver don’t allow changing this settings.

Step 4: Encoder settings


picture 4

To make remote desktop speed faster please follow this recommended encoder settings:

1) It’s recommended to disable desktop background, visual effects and desktop composition. This simplifies remote desktop image and increases compression level and as a result make the system work faster.
2) Don’t use RAW encoder – it’s destined only for testing and transmits the image without compression.
3) AAFC encoder is used for connection within one LAN where connection bandwidth is more than 10 Mbit/sec. If you’ve got less use AAC.
4) To improve performance you can also decrease color depth and remote desktop complexity as well as choose optimal encoder settings. For example, to watch pictures it might be the best option to turn on jpeg compression.

Maxim Prokopenko, independent Internet and network technologies expert and co-developer of Ammyy Admin.

Try instant connection with Ammyy Admin

How to establish connection within 30 sec (first run guide)

Ammyy Admin features

Ammyy Admin manual

Comments

Copy link Quote reply

Ratinod commented Mar 26, 2019

Godot version:
3.1 (March 13, 2019) and 3.0.6

OS/device including version:
Windows 10 x64
GeForce GTX 770/PCIe/SSE2

Issue description:
The game crashes after a while. The game window will freeze and then close, giving the error:
drivers/unix/net_socket_posix. cpp:190 – Socket error: 10054

Steps to reproduce:

This comment has been minimized.

Copy link Quote reply

qarmin commented Mar 26, 2019

I got this backtrace, when I opened all scenes at once:

This comment has been minimized.

Copy link Quote reply

qarmin commented Mar 26, 2019

Also sometimes error about missing function happens:

This comment has been minimized.

Copy link Quote reply

Chaosus commented Apr 2, 2019

Play until the error appears

Can you bisect this bug to – Run the game and its crash?

This comment has been minimized.

Copy link Quote reply

CEDoromal commented Apr 2, 2019

I previously encountered this error in my tilemap game.
For me, the fix was to load in the textures to the tilemap node.
Maybe you have a node with a property that is not properly loaded.

(I’m new to Godot so I’m not really the one to trust with this, but maybe I could help)

This comment has been minimized.

Copy link Quote reply

CEDoromal commented Apr 2, 2019 •

I think it has something to do with Winsock. And if it does, that means that the error is WSAECONNRESET (Error Code: 10054, see https://docs. microsoft. com/en-us/windows/desktop/winsock/windows-sockets-error-codes-2 for more info)

I don’t really know how and why Godot is using Winsock, but these stuffs are beyond my current knowledge.

(I haven’t reached college education yet. Don’t blame me for not understanding these. lol ? )

This comment has been minimized.

Copy link Quote reply

Zireael07 commented Apr 2, 2019

Socket error 10054 is because the debugger is using Winsock, and it’s disconnecting when the crash happens and/or it gets unexpected data. (Yes, I have had cases where the game runs perfectly IF I don’t touch the remote tree tab, then it crashes, because the debugger for some reason cannot handle it)

This comment has been minimized.

Copy link Quote reply

CEDoromal commented Apr 2, 2019

Socket error 10054 is because the debugger is using Winsock, and it’s disconnecting when the crash happens and/or it gets unexpected data. (Yes, I have had cases where the game runs perfectly IF I don’t touch the remote tree tab, then it crashes, because the debugger for some reason cannot handle it)

Well now I know why Godot is using Winsock. Thanks! ?

This comment has been minimized.

Copy link Quote reply

Zireael07 commented Apr 2, 2019

Most probably your project is doing something which causes the project itself to crash. badly named variables, recursive references, missing assets could all be the reason.

This comment has been minimized.

Copy link Quote reply

Ratinod commented Apr 2, 2019

Play until the error appears

Can you bisect this bug to – Run the game and its crash?

No. The game never crashed on launch. You need to play for a while until you get an error.

Most probably your project is doing something which causes the project itself to crash. badly named variables, recursive references, missing assets could all be the reason.

I am new to Godot. And this project was done strictly following the tutorial. Twice from scratch (on versions 3.0.6 and 3.1). And this problem occurred both times. The problem does not allow itself to be found (not an informative error without any specifics).

This comment has been minimized.

Copy link Quote reply

OlexiyKravchuk commented May 5, 2019

I have the same problem with my project in Godot_v3.1-stable_win64.

This comment has been minimized.

Copy link Quote reply

OlexiyKravchuk commented May 5, 2019 •

I completely deleted a lot of comments in which they hit lines like this – ("""some kind of code" value of the line "some kind of code""") and this helped, after this, such error stopped appearing. If there are relapses I will inform.

This comment has been minimized.

Copy link Quote reply

Hedre commented May 12, 2019

I have this problem too

This comment has been minimized.

Copy link Quote reply

ScepticDope commented May 13, 2019 •

Same error here, Windows 8.1 V3.1.1 Mono stable. After a reboot everything works fine again? I only get this on launch after messing around with 3D camera’s.

This comment has been minimized.

Copy link Quote reply

robertarnborg commented May 16, 2019 •

I am getting this error when changing scenes or reloading scenes sometimes ?

This comment has been minimized.

Copy link Quote reply

paacardoso commented May 16, 2019

I found out that disabling the debugger agent (in Project Settings/Mono/Debugger Agent/Wait For Debugger) will solve this issue.

This comment has been minimized.

Copy link Quote reply

hedgehog90 commented May 30, 2019

I get this error + crash when trying to debug Godot using vs code.

This comment has been minimized.

Copy link Quote reply

Obr00007576 commented Jun 2, 2019

This comment has been minimized.

Copy link Quote reply

Obr00007576 commented Jun 3, 2019

I’ve solved my problem. At the beggining I tried to use ‘export(packedscene) var scene’ to export the scene and then use function change_scene_to to get into another scene. The error occured in this way but when I tried to use change_scene with parameter of the path of the scene, everything was in order. So, I guess, the operation of export happens at the begginning of the programm and it is the first step. If the scenes are exported in circle just as what I said in the last comment, godot will stick on loading those scenes in dead circle. When it got the limit of memory or quantity of functions or anything else I’m not sure, godot got broken with this error because its debugger had been broken.

This comment has been minimized.

Copy link Quote reply

winston-yallow commented Jun 17, 2019 •

I have the same error message (only on windows, Linux seems to run smooth for me). I am not sure if it is caused by the same thing as the error message itself is not very descriptive. My project has only a few nodes. The only one with a script is a RigidBody with some _integrate_forces() things. The error consistently appears after the game ran for a few seconds (basically the error appears when the body reaches a "stable" position). My code was a small test for an idea I had (limiting the movement of a RigidBody onto a Curve3D. ). The code is far from perfect, however it should not make the engine crash.

If you think this is not related to this issue please let me know so I can create a separate issue. The error message itself does not really tell me what is wrong or why it appears.

Godot Version:
v3.2.dev. calinou.197b65f32

OS:
Windows 10 x64

Minimal reproduction project:
testing. zip

Code that enables the bug:

This comment has been minimized.

Copy link Quote reply

Zireael07 commented Jun 17, 2019

That doesn’t look like GDScript, nor C#. What language/bindings is that?

This comment has been minimized.

Copy link Quote reply

winston-yallow commented Jun 17, 2019

Do you mean my example? It is GDScript (using type annotations)

This comment has been minimized.

Copy link Quote reply

winston-yallow commented Jun 17, 2019

After further investigation I think the drivers/unix/net_socket_posix. cpp:190 – Socket error: 10054 error is only hiding another error which causes the game to crash. In my case I found an error in my code:

This comment has been minimized.

Copy link Quote reply

Klassix commented Jun 18, 2019 •

Hi iam currently doing the "Discovering Godot: Make Video Games in Python-like GDScript" on udemy. While trying around for an exercise ive also run into this bug. Heres the bugged project:

This comment has been minimized.

Copy link Quote reply

qarmin commented Aug 23, 2019

If you thinks it might be a Godot bug, then attach here a minimal project to reproduce it.

This comment has been minimized.

Copy link Quote reply

golddotasksquestions commented Aug 23, 2019 •

Only after shutting down and restarting Windows, Godot stopped crashing when I started to run my project.

This crashing behavior and error cost me way too much time though. I did not consider restart earlier, because I had no problem with Windows or other Window applications while the issue was present. I also had no problem working within the Godot editor while the crashing was occurring, as it only crashed the window in which I tried to run my project. Restarting Godot itself did not help.

After trying to run another Godot project which I did not touch that day with the same crash and error was it clear that I had to restart my system.

Even if this is not a Godot bug, the error message (as it is so often) could be a lot more informative about what is going on and how to solve the issue.

This comment has been minimized.

Copy link Quote reply

SarojKumar10 commented Aug 28, 2019

It happened to me when I deleted a material on which a model was depended on. Making the material with same name and extension fixed it.

This comment has been minimized.

Copy link Quote reply

akien-mga commented Oct 10, 2019 •

To everyone who reported issues in this thread apart from OP, please open your own issues.

This issue should have been renamed earlier but "Socket error: 10054" is NOT A BUG and this is also not a common denominator between the issues you are facing. It’s just a message from the debugger telling you that the debugger can’t connect anymore — because your game process crashed.

As such this issue is basically a collection of "my game can crash" comments, which you can easily imagine might have a thousand different causes for every single commenter here.

This issue should be solely about debugging the crash when playing the game in #27444 (comment), all other issues should have their own ticket with detailed steps to reproduce and reproduction project, otherwise they have no change to be fixed.

This comment has been minimized.

Copy link Quote reply

akien-mga commented Oct 10, 2019

@Ratinod I played the match3 game for a few minutes on Godot 3.2 alpha 1 and did not get any issue. Can you still reproduce the crash?

This comment has been minimized.

Copy link Quote reply

Toshiwoz commented Oct 10, 2019

@akien-mga, to my understanding what happens is what is mentioned here:

Socket error 10054 is because the debugger is using Winsock, and it’s disconnecting when the crash happens and/or it gets unexpected data. (Yes, I have had cases where the game runs perfectly IF I don’t touch the remote tree tab, then it crashes, because the debugger for some reason cannot handle it)
Based on this comment #27444 (comment)

So, if the debugger cannot handle the error, there’s no error message to look at. And, this way it becomes very hard to debug the issue. Meaning that it would become very hard to create a minimal reproduction project, as the CAUSE of the issue is unknown.

This issue should have been renamed earlier but "Socket error: 10054" is NOT A BUG
all other issues should have their own ticket with detailed steps to reproduce and reproduction project, otherwise they have no change to be fixed.

And this worries me, because I don’t know how to find the source of the problem, in other words it will become very hard to fix my specific issue. And given what you say it sounds like there will be no help from here.
I’ll delete my "spam" comment anyhow. (not this one)

This comment has been minimized.

Copy link Quote reply

akien-mga commented Oct 10, 2019 •

@Toshiwoz I didn’t mean that any comment was spam – but each comment stating that they have the "same" issue should actually be their own issue with detailed information on what issue you actually have.

So, if the debugger cannot handle the error, there’s no error message to look at. And, this way it becomes very hard to debug the issue. Meaning that it would become very hard to create a minimal reproduction project, as the CAUSE of the issue is unknown.

It’s not about the debugger not being able to handle the error. The game crashes (process killed), so the connection to the debugger is severed. The debugger notifies it and reports that.

The fact that there is no other error is not related to the debugger losing its connection.

Ammyy admin connecting to router

В разделе "технология" приводится описание процедуры подключения к удаленным компьютерам, не имещим выделенный IP адрес, не используя проброс портов и другие специальные настройки.

Вы так же узнаете о назначении и особенностях работы NAT-маршрутизатора при установлении сеанса удаленного доступа к компьютерам, находящимся в одной или разных локальных сетях.

Технология удаленного подключения с помощью Ammyy Admin

Внутренний и внешний IP адрес

Существует ряд программных средств для организации удаленного администрирования в локальной сети, например, Remote Desktop Connection, которая входит в стандартный набор утилит ОС Windows. Подобные программы предназначены для установления соединения с компьютерами, IP адреса которых известны и доступны. И если в рамках одной локальной сети определение IP адресов не является проблемой, то в случае, если необходимо получить удаленный доступ к компьютеру через Интернет, все оказывается намного сложнее. Теоретически, можно попытаться воспользоваться такими программами и для настройки удаленного доступа к компьютерам через интернет, но в реальности это потребует достаточно много времени и определенных знаний, чтобы это можно было реализовать на практике.

Как правило, компьютеры, находящиеся в локальных сетях, не имеют внешних (выделенных) IP адресов и находятся за интернет-шлюзом, со стороны интернета они фактически относятся к одному IP адресу самого интернет-шлюза с интегрированным NAT устройством.

Адреса внутри локальной сети присваиваются компьютерам согласно документу RFC 1918, регламентирующим распределение IP адресов в частных IP-сетях. Корректное распределение адресов обеспечивает полную связанность на сетевом уровне между хостами предприятий. В контексте данного документа предприятие рассматривается как автономная сеть на базе стека протоколов TCP/IP. В таком случае распределение адресов является внутренним делом предприятия.

Адреса частного диапазона запрещены к использованию в глобальной сети и могут применяться только в локальных сетях. К диапазонам адресов для частного использования относятся:

10.0.0.0 — 10.255.255.255
172.16.0.0 — 172.31.255.255
192.168.0.0 — 192.168.255.255

Для лучшего понимания, почему установление соединения между компьютерами в разных локальных сетях, подключенных к интернету через маршрутизатор, или соединение компьютеров из одной локальной сети с компьютером в Интернете, имеющим внешний IP адрес, необходимо более детально ознакомиться с механизмом работы протокола NAT.

Попробовать подключение с помощью Ammyy Admin не используя проброс портов (настройка маршрутизатора не требуется)
Как установить соединение за 30 сек (инструкция по первому запуску Ammyy Admin)
Узнать возможности программы Ammyy Admin

Сетевое соединение компьютеров (проброс портов, настройка маршрутизатора)

В момент установления соединения одним компьютером к другому, на компьютере-инициаторе открывается сокет, параметры которого включают IP адрес и порт источника, IP адрес и порт назначения, сетевой протокол.

Для номеров портов в формате IP-пакета предусмотрено поле длиной 2 байта, что позволяет определить максимальное количество портов равное 65 535. Первые 1023 порта являются общеизвестными и зарезервированы для таких популярных сервисов как Web, Telnet, SMTP, FTP и прочее. Оставшиеся порты могут использоваться для любых других целей.

Например, при обращении одного сетевого компьютера к серверу FTP (порт 21) система назначает сессии один из портов выше 1023, например, порт 2188. В этом случае отправляемый к FTP-серверу IP-пакет будет содержать IP адрес и порт (2188) отправителя, IP адрес и порт (21) получателя. IP адрес и порт отправителя впоследствии будут использоваться для ответа клиенту со стороны сервера.

При использовании маршрутизатора между внутренней сетью и Интернетом, механизм установления сессии несколько отличается. При установке связи с ПК из внешней сети системой открывается сокет, включающий IP адрес и порт источника, IP адрес и порт назначения, сетевой протокол. Приложение, передающее данные через данный сокет, указывает в IP-пакете в поле параметров источника IP адрес и порт источника, и, соответственно, в поле параметров получателя — IP адрес и порт назначения.

Например, ПК внутренней сети с IP адресом 192.168.0.1 подключается к Web-серверу, находящемуся в глобальной сети, с IP адресом 61.234.166.25. Операционная система компьютера, инициирующего соединение, может назначить порт источника 1255. Портом назначения устанавливается порт web-сервиса, 80. В этом случае отправляемый пакет будет иметь следующие атрибуты ( рисунок 1):

рисунок 1

Маршрутизатор производит процедуру преобразования сетевых адресов (NAT), перехватывая исходящий трафик внутренней сети. Отправленный пакет данных заносится в таблицу сопоставления портов источника и получателя, при этом используются IP адрес и порт назначения, внешний IP адрес устройства NAT (WAN) и порт, используемый сетевой протокол, внутренние IP адрес и порт клиента.

После этого NAT-маршрутизатор заменяет внутренний IP адрес и порт клиента на внешние (устройства NAT). Модифицированный пакет данных отправляется по внешней сети адресату, серверу с IP адресом 61.234.166.25.

После получения пакета сервер будет отсылать ответ на внешний IP адрес и порт NAT-маршрутизатора с указанием собственного IP адреса, порта отправителя и других атрибутов (рисунок 2).

рисунок 2

Далее NAT-маршрутизатор принимает пакеты от сервера и анализирует их, сопоставляя данные со своей таблицей соответствия портов, и если значения IP адреса, порта и сетевого протокола удаленного узла будут совпадать с аналогичными значениями источника в таблице соответствия, то NAT-роутер произведет обратное преобразование и направит пакет данных уже на внутренний IP адрес и порт клиента локальной сети. В том случае, если в таблице не находится соответствия, то входящий пакет не принимается, и соединение разрывается.

Такая схема установки соединения имеет свои особенности, поскольку NAT-маршрутизатор позволяет создать сессию только в том, случае если она инициируется компьютером внутренней сети. Если подключение будет инициироваться со стороны внешнего компьютера, маршрутизатор просто отвергнет это подключение.

Именно поэтому создать удаленное подключение к компьютеру из внешней сети зачастую бывает непросто.. Наиболее часто для этих целей используют процедуру проброса портов, которая позволяет сделать доступными приложения, запущенные на компьютере локальной сети. Для этого осуществляется настройка маршрутизатора — на нем задается сопоставление портов, используемых определенными приложениями, с IP адресами компьютеров, на которых эти приложения запущены. В результате создается так называемые виртуальные серверы, и любые запросы из внешней сети на NAT-маршрутизатор по указанному порту будет автоматически перенаправляться на указанный виртуальный сервер локальной сети.

Для реализации такого способа организации подключения в корпоративной сети нужно согласие, воля и время системного администратора. В реальности это достаточно трудоемкая задача, исключающая возможность быстрого подключения к корпоративной сети извне.

Установить быстрое подключение к удаленному ПК без помощи сисадмина
Как установить соединение за 30 сек (инструкция по первому запуску Ammyy Admin)
Узнать возможности программы Ammyy Admin

Соединение компьютеров через внешние роутеры Ammyy

Ammyy Admin позволяет организовать подключение к удаленному компьютеру, независимо от того, находится он в локальной сети за NAT или же имеет выделенный IP адрес, причем для этого не нужна настрока маршрутизатора.

В случае если, оба компьютера имеют внешние IP адреса или же являются узлами одной локальной сети, подключение возможно напрямую по IP адресу.

Если один или оба компьютера не имеют внешних IP адресов или находятся в разных локальных сетях за NAT, используется подключение с помощью одного из публичных серверов-посредников компании Ammyy, выполняющего роль ретранслятора и позволяющего обойти NAT.

Основной принцип обхода NAT используемый в Ammyy Admin заключается в том, что подключаясь к публичному роутеру Ammyy, компьютер, находящийся в локальной сети за NAT-маршрутизатором, сам инициирует сессию. Это происходит в момент запуска программы или нажатия кнопки "Запустить" в клиентской части программы. Попробовать подключение Вы можете, скачав и запустив программу Ammyy Admin.

При первом запуске программы, компьютеру присваивается уникальный идентификационный номер в глобальной сети Ammyy — Hardware ID, который генерируется в привязке к аппаратному обеспечению компьютера и не меняется при последующих запусках программы.

После установления соединения с Ammyy роутером подключение от или к удаленному компьютеру осуществляется посредством процедуры сопоставления ID компьютеров, их IP адресов и портов отправления и назначения.

Например, компьютеру с внешним IP адресом необходимо подключиться к компьютеру, находящемуся за NAT-маршрутизатором в локальной сети. Процедура установления сеанса удаленного доступа будет выглядеть следующим образом:

Таким образом, соединение удаленных компьютеров с использованием публичных роутеров Ammyy позволяет быстро подключаться к любым ПК и серверам, независимо от их местонахождения в локальной или глобальной сети.

Данный подход является идеальным решением для случаев спонтанной техподдержки, когда заранее неизвестны компьютеры, к которым нужно подключаться и нет возможности провести предварительные настройки соединения и проброс портов.

Установить быстрое подключение к удаленному ПК без помощи сисадмина
Как установить соединение за 30 сек (инструкция по первому запуску Ammyy Admin)
Узнать возможности программы Ammyy Admin

С помощью Ammyy Admin можно выполнять управление без непосредственного присутствия. Для этого необходимо включить программное обеспечение в режим службы. Распаковка ПО не требуется. Просто запустите файл и воспользуйтесь лицензией. Это снимет ограничение на длительность сеанса.

Изменение клиента и оператора

Меню «Клиент»

Снятие ограничения

Видео: Удаленный доступ Ammyy Admin

Настраиваем Ammyy Admin для работы через СВОЙ промежуточный сервер.

« previous entry | next entry »
Jan. 26th, 2010 | 07:26 pm

Как-то давно я писал в Интернете о всевозможных способах удобного удаленного администрирования. Для некоторых пользователей тема оказалась полезной. Тогда же я рассказал о программе, широко известной в узких кругах — Team Viewer.
Она позволяет удаленно управлять компьютерами, даже если у обоих пользователей (работающих за управляемым и управляющим компьютерами) "серые" айпишники.
Всё бы замечательно, но софтина заруливает соединение между двумя компами через СВОИ промежуточные сервера, которые в бесплатном режиме использования софтины работают крайне медленно и с тайм-аутами в пять минут. Это неприемлимо для многих, а покупать лицензию за почти 600 баксов за соединение без ограничений по скорости и времени, тем более не айс.
Но, есть выход!
Я случайно нашёл в Интернете программу, которая имеет функционал близкий к тимвьюверу, но её производители позволяют БЕСПЛАТНО для некоммерческого использования юзать саму софтину и главное, предоставляют софт для создания промежуточного сервера (роутера соединений). А теперь внимание! Промежуточный сервер, а точнее программа для организации такого сервера на любом компе с "белым" айпишником, предоставляется бесплатно!
Всё прекрасно устанавливается и работает. Я развернул для тестов промежуточный сервер-роутер на своем рабочем компьютере и через него теперь спокойно соединяются любые разрешенные мной компьютеры.

Программа называется Ammyy Admin. Нагуглите сами. Офсайт имеет и русскоязычный вариант.
Как и тимьювер, программа в одном экзешнике заключает в себе и клиентскую и операторскую (серверную) часть. И на этой стадии можно было бы дальше ничего не объяснять, так как у этой программы, как и у тимвьювера уже зашито в настройках несколько публичных промежуточных серверов, вечно тормознутых и занятых для халявных пользователей. Но нам всем интересно, когда софтина лезет через СВОЙ заранее настроенный промежуточный сервер, запущенный на каком-нибудь удаленном выделенном сервере с белым IP-адресом, а не через навязанные демо-сервера.

Для этого качаем с раздела загрузок офсайта проги помимо AMMYY_Admin. exe (это клиентско-операторская часть, которую надо раздавать тем кто админит и будет администрируемым) ещё и AMMYY Router для Windows.

Далее уже не так все сложно для тех, кто хоть чуточку разбирается в сетевых технологиях и имеет выделенный сервер (или просто компьютер) под рукой с "белым" адресом и с возможностью открыть снаружи всего три порта.

На компе с белым адресом открываем три ЛЮБЫХ незанятых порта, что-то типа
портов 12345, 12346, 12347.
Затем на этом же компе распаковываем скачанный router. zip (напомню, это и есть утилита для создания промежуточного сервера под Windows), находим файл router_settings. txt, любым текстовым редактором убираем в этом конфиге все строчки и добавляем только одну строчку (с учетом вышеуказанных портов для примера!):

ports: 12345, 12346, 12347

Сохраняем конфиг и запускаем AMMYY_Router. exe.
В его меню выбираем App-Start.
Всё, промежуточный сервер готов работать.
Как теперь организовывать соединение через ваш созданный промежуточный сервер?
Легко! Например, ваш промежуточный сервер имеет внешний айпишник 80.80.10.10 и роутерная часть софтины "засела" на нём на портах 12345, 12346, 12347.

Даем вашему удаленно управляемому пользователю клиентскую часть — файл AMMYY_Admin. exe, просим её запустить и сделать ещё пару вещей (внимание, процесс можно автоматизировать, я уже этот вопрос решил, расскажу потом как), а именно зайти в меню Ammyy-Setting-Network и переключатель Public переключить на Private и ниже в пустое окно скопипастить строку вида (внимание, у вас порты могли быть другими!):

Также во вкладке Ammy-Common-Operator ОБЯЗАТЕЛЬНО (!) клиент должен убрать галочку напротив "Request a client’s router"

Сохраниться через Ок.

Это практически всё!

Теперь клиенту достаточно для удаленного администрирования его компа кем-то со стороны стартовать AMMYY_Admin. exe, нажать кнопку "Запустить" на вкладке "Клиент" и сообщить вам цифровой ID (идентификатор соединения). Далее утилита сама зайдёт на ваш промежуточный сервер и будет ждать коннекта.
Вы, соответственно, на своей стороне также просто запустите AMMYY_Admin. exe и на вкладке Оператор введёте ID-клиента. У клиента выйдет запрос на подключение, и если он его подтвердит, вы сможете по ВАШЕМУ скоростному каналу (там у вас сидит промежуточный сервер) его администрировать, даже если вы оба находитесь под серыми IP-адресами.

Разумеется, у многих возникнет вопрос, а нельзя ли как-то автоматизировать процесс настроек для клиента, которому такой процесс может оказаться крайне сложным?
Можно и нужно.
Правда я все сделал на скорую руку, но кому надо поймут хотя бы принцип (хотя вся моя конструкция вполне работоспособна под Windows XP) и доделают все по своему усмотрению.

Итак, поехали.
Когда вы у себя настроили амми админ для работы через созданный вами промежуточный сервер, все настройки на вашем компьютере автоматически сохранятся в файле settings. bin по адресу:

%SystemDrive%Documents and SettingsAll UsersApplication DataAMMYY

(пути указаны только для экспишки!)

Не трудно догадаться, что вам всего лишь надо предоставить возможность вашему клиенту, уже скачавшему экзешник (клиентскую часть) амми админа каким-то образом "импортировать" ваши настройки к себе.

Понравилась статья? Поделиться с друзьями:
Добавить комментарий

;-) :| :x :twisted: :smile: :shock: :sad: :roll: :razz: :oops: :o :mrgreen: :lol: :idea: :grin: :evil: :cry: :cool: :arrow: :???: :?: :!: