2

Это немного смущающий вопрос: с одной стороны, можно предположить, что это просто (много похожих обращений в Google, я не нашел здесь этого раньше ...), с другой стороны, все предполагаемые решения, которые я нашел, имеют не удалось.

Суть моей проблемы: I have 2 computers. #1 is a машина с Windows 10 . # 2 - произвольный os (т. Е. Любой из * nix, OS X, windows).Я хочу ssh от # 1 до # 2.

Контекст: #2 is running an ssh daemon. I know that #2 needs to get an IP address somehow from #1. In that respect, #1 has an additional feature that should help find a solution, namely, #1 is connected to the internet via wifi. I'm also aware I need to find the IP address of #2, once it gets one, before I can ssh to it. Let's say #1's IP (wireless adapter) is 192.168.10.62 .

Примечание: у меня установлен Nmap для Windows с библиотекой Npcap. Для того, чтобы он работал, требуется некоторая необычная / неожиданная тайная настройка (сброс сети с помощью netsh int ip reset c:\resetlog.txt ")... в случае, если это может иметь значение.

Что я пробовал:

  1. Sharing: в машине windows10 (# 1). Перешел к сетевым подключениям -> Беспроводное сетевое подключение -> Свойства -> Общий доступ -> Включить "Разрешить другим пользователям сети подключаться через подключение к Интернету на этом компьютере" и выбрать "Подключение по локальной сети" (ethernet) в разделе "Подключение к домашней сети" меню этой вкладки общего доступа.

    Запуск ifconfig в Windows показывает адаптер Ethernet с IP-адресом 192.168.137.1

    Тем не менее, компьютер № 2, похоже, не получил IP-адрес: запуск nmap -sS 192.168.137.1/24 дает только компьютер № 1. Если вместо этого я сопоставлю беспроводной интерфейс (map -sS 192.168.10.0/24), я получу № 1 плюс другие машины, но не ПК № 2.

    Этот последний отрицательный результат я мог бы понять, если так получится, что оба адаптера должны быть соединены. Однако не следует ли об этом позаботиться, используя функцию "Общий доступ" в Windows10? В OSX (в роли ПК № 1) это именно то, что делается за кулисами, и у меня нет проблем.

  2. Sharing+Bridging: сначала я настроил общий доступ, как указано выше. На данный момент, некоторые предполагаемые решения говорят, что нужно установить мост между адаптером Ethernet и беспроводным (все на ПК № 1). Однако, когда я пытаюсь это сделать, я получаю сообщение об ошибке:

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

    Тупик.

  3. Bridging: в разделе "Сетевые подключения", удерживая клавишу Ctrl +, выберите адаптер Ethernet и беспроводной, а затем щелкните правой кнопкой мыши один из них и включите мост между ними. Обратите внимание, что в этом методе не разрешено совместное использование.

    У меня были некоторые студенты, которые пытались сделать это раньше, и им удалось каким-то образом получить IP-адрес для ПК № 2, но результаты не были ни систематическими, ни стабильными: они потеряли беспроводной IP-адрес в № 1 и с этим соединение с # 2; кроме того, они не могли повторить это.

    Мои результаты с самого начала были отрицательными, то есть простое соединение обоих адаптеров (с беспроводным соединением ПК № 1 с рабочим IP) приводит к тому, что беспроводное соединение теряет подключение к Интернету, но № 2 по-прежнему недоступен. Это именно то, что студент увидел после своего первоначального успеха.

  4. Dhcpserver: после сбоя этих трех опций я решил, что могу настроить свой компьютер с windows10 (# 1) в качестве сервера dhcp, прослушивающего адаптер Ethernet. Я не получил бы доступ в Интернет для ПК № 2 таким образом, но по крайней мере я ожидал бы, что он получит IP-адрес от ПК № 1 и, таким образом, сможет подключиться к нему по ssh.

    Для этого я скачал Dhcpserver для Windows (http://www.dhcpserver.de) версии 2.5.2 (последняя бесплатная по состоянию на пт 3 ноября 2017 г.).

    1. Dhcpserver без включения общего доступа к беспроводному адаптеру. Вручную я назначаю сетевому адаптеру IP 192.168.123.1/24, а мастер Dhcpserver устанавливает пул dhcp в пределах этого диапазона сети, но ничего не происходит, подключается ПК № 2, но не получает IP-адрес (не отображается ни на карте, ни на странице состояния Dhcpserver).
    2. Dhcpserver с включением общего доступа к беспроводному адаптеру: Ethernet показывает IP 192.168.137.69/24 после включения общего доступа. Опять же, однако, ПК № 2 не получает назначенный IP-адрес.

    При использовании Dhcpserver я иногда видел спорадическое уведомление, говорящее что-то вроде «Dhcpserver назначил IP-адрес 192.168.137.2 для mac-адреса ...», но A) он не обнаруживается систематически, и когда это происходит, это происходит после довольно после запуска Dhcpserver и B) ни карта, ни ssh (putty) не могут получить доступ к компьютеру №2.

    Те же отрицательные результаты при запуске Dhcpserver в качестве службы в Windows или в качестве приложения. Также я запустил автоматическую настройку брандмауэра в приложении.

Статус:

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

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

1 ответ1

1

У меня был новый # 1 компьютер Dell Windows 10 без порта Ethernet (поэтому я использовал USB-> Ethernet-адаптер) и № 2 старый Lenovo T60 с установленной Xubuntu 18.04 LTS.

На машине №1:

  • Подключил мой # 1 к Wi-Fi, и подключил кабель к адаптеру к USB; перешел в Панель управления-> Сеть и Интернет-> Центр управления сетями и общим доступом-> Изменить настройки адаптера (в левой боковой панели);
  • здесь был список интерфейсов, среди них мой интерфейс Wi-Fi и мой используемый интерфейс Ethernet (говоря "Неопознанное соединение").
  • Щелкните правой кнопкой мыши по интерфейсу Wi-Fi, вкладке "Свойства", "Общий доступ" (вверху);
  • позволил другим пользователям сети делать все, в "Соединении с домашней сетью" выбрал мой интерфейс Ethernet и нажал "ОК".
  • с помощью ipconfig в PowerShell я проверил свой адрес в интерфейсе Ethernet. Уже был один, назовем его # IP1, а маску подсети # MASK1. Может быть, вы должны установить его вручную, если он не установлен.

На машине № 2:

  • проверил имя интерфейса Linux linux #LINUX_ETH_NAME, используя ip l (должен начинаться с буквы e);
  • если # MASK1 для # 1 - 255.255.255.0, тогда #SUBNET_MASK_DIGITS - 24;
  • установите # IP2 (должно быть в подсети # IP1 и # MASK1) - если # MASK1 равен 255.255.255.0, то обязательно измените последнюю цифру с # IP1 в диапазоне (1 253) (например, если # IP1 = 192.168.1.1 тогда # IP2 может быть 192.168.1.2);
  • добавил IP с помощью sudo ip a a #IP2/#SUBNET_MASK_DIGITS dev #LINUX_ETH_NAME
  • добавлен шлюз по умолчанию для # 2, чтобы быть # IP1 с sudo ip route add default via #IP1

и это сработало!

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