2

В настоящее время я использую пакетный скрипт для монтирования сетевых ресурсов каждое утро:

NET USE * /DELETE /Y
NET USE Z: \\<IP>\<SHARE> <AUTHENTICATION> /persistent:no
...

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

NET USE * /DELETE /Y
NET USE Z: \\fqdn.com\<SHARE> <AUTHENTICATION> /persistent:no
...

За исключением того, что не работает в пакетном скрипте или пользовательском интерфейсе Windows.

Я думаю, что был бы способ получить IP-адрес fqdn.com (который также удобно хранится по адресу fqdn2.com/ip.txt), но мой опыт пакетирования намного превосходит мой.

Любой вклад высоко ценится.

3 ответа3

1

С PowerShell эта задача немного проще, поскольку в вашем распоряжении все возможности .Net Framework. Есть класс под названием System.Net.WebClient, который можно использовать для загрузки файла и получения его содержимого. Вы можете использовать сценарий PowerShell, аналогичный приведенному ниже, чтобы извлечь содержимое файла ip.txt и затем выполнить команды cmd.exe.

$fqdn = "fqdn domain name goes here"
$url  = "http://$fqdn/ip.txt"

$fqdnIp = (new-object System.Net.WebClient).DownloadString($url)

Write-Host -ForegroundColor Green "Retrieved contents of ${url}: $fqdnIp"

$cmd = "`"NET USE * /DELETE /Y`""
&cmd.exe /c $cmd

$cmd = "`"NET USE Z: \\$fqdnIp\<SHARE> <AUTHENTICATION> /persistent:no`""
&cmd.exe /c $cmd
0

То, что вы можете перейти на веб-сайт fqdn.com, не дает вам доступа к внутренней сети или внутреннему домену. Порт 80 - это стандартный порт для HTTP (веб-сайтов), который пересылается с общедоступного IP-адреса на ваш внутренний веб-сервер. Однако, возможно, с несколькими другими исключениями, это все, что разрешено.

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

Как только вы установили VPN-соединение, ваш пакетный скрипт будет работать. Вы можете получить доступ к внутренним сетевым дискам и принтерам и делать все, что можете, находясь в офисе.

Microsoft предлагает бесплатный VPN-сервер со всеми версиями Windows Server, а клиент встроен во все версии Windows. Существуют и другие решения VPN, как аппаратные, так и программные, бесплатные и платные.

Поговорите с вашим Windows/ сетевым администратором, возможно, VPN уже установлен.

0

ваши сценарии должны работать, за исключением того, что вы должны проверить 4 вещи

  1. DNS работает? попробуйте проверить это на вашем внешнем компьютере с помощью ping.
  2. попробуйте отключить WINS на стороннем клиенте.
  3. Вы перенаправили все необходимые порты? попробуйте поставить сервер на хост DMZ и посмотреть, работает ли он.

    если публичный ip не изменится, то просто запишите его в ваши systems32\etc\hosts.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .