Как я совместно использую Интернет с Windows от моего поля Linux?

Во-первых, можно хотеть попробовать safecopy --stage2 и safecopy --stage3 также, чтобы попытаться извлечь немного больше из диска.

Если Ваша копия неравнодушна, у Вас есть поврежденная файловая система. Выполненный fsck на нем (например. fsck -y copy-of-data.img) попытаться восстановить. Обратите внимание для NTFS, необходимость в последней версии NTFS-3g. Восстановление означает превращать файловую систему в допустимую файловую систему, это может потерять некоторые данные. Также - это на копии изображения. Затем смонтируйте изображение и попытайтесь восстановить файлы с него: sudo mount -o loop copy-of-data.img /mnt. Отметьте это если fsck находит некоторые данные, что это не может коснуться имени файла, это сохранит его под lost+found каталог.

Иногда, когда fsck выполнения, это отбрасывает данные, потому что те данные, кажется, не принадлежат никакому файлу. Другой подход для восстановления данных должен искать фрагменты на диске, которые похожи на полезные данные. Это работает особенно хорошо на форматы файлов, которые имеют распознаваемый заголовок, такой как изображения. Так попытайтесь выполнить инструменты вырезания на копии образа диска, куда Вы не работали fsck. Посмотрите, Как восстановить данные из плохой SD-карты? Если эти инструменты вырезания не легко доступны в Вашей системе, попробуйте Testdisk живой CD.

6
13.06.2012, 10:02
4 ответа

Необходимо настроить NAT на поле Linux. Существуют многочисленные практические руководства в Сети при поиске NAT и iptables возможно, включая дистрибутив Вы используете. Вот практическое руководство для Debian, который должен работать над другими дистрибутивами также: http://debianclusters.org/index.php/NAT_with_IPTables

Вот некоторые строки, которые прибывают из немецкого практического руководства Ubuntu:

sysctl -w net.ipv4.ip_forward=1
iptables -A FORWARD -o eth0 -s 192.168.0.0/16 -m conntrack --ctstate NEW -j ACCEPT
iptables -A FORWARD -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT
iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE

Поместите их где-нибудь, где они выполняются при запуске (/etc/rc.local, или Вы поднимаете перед каждой строкой и помещаете все это в/etc/network/interfaces), и замените eth0 сетевым устройством, которое соединяется с Интернетом и eth1 тем, который переходит к Вашей LAN.

Вам, возможно, также придется сказать Вашему полю Windows некоторые серверы имен (DNS) вручную, если Вы не хотите настраивать bind на Вашем поле Linux. И я полагаю, что Вы не нуждаетесь или уже имеете сервер DHCP в своей LAN.

4
27.01.2020, 20:27

Вопрос спрашивает,

Действительно ли реверс возможен вместо этого (подключающий Интернет к компьютеру Windows и совместно использующий его с Linux)?

Вот то, как можно совместно использовать Интернет-соединение от Windows до Linux.

В Windows,

  • Удостоверьтесь, что Интернет, совместно использующий, включен.

    • Перейдите к Панели управления, найдите сетевое соединение, затем щелкните правой кнопкой по интернет-адаптеру и нажмите "Properties".
    • Нажмите "Advanced".
    • Тут же нажмите переключатель для включения интернет-совместного использования.
  • В Windows 7:

    • Перейдите к Панели управления → "Сеть и Совместное использование Центра". (Вы, возможно, должны пройти "Сеть и Интернет" для получения там.)
    • Звон на "Изменяет настройки адаптера".
    • Щелкните правой кнопкой по сетевому адаптеру и нажмите "Properties". Введите пароль администратора, если спросили.
    • Нажмите на вкладку "Sharing" и позвольте совместно использовать.

На Linux,

С корнем (sudo или su) полномочие,

  1. Введите это для установки шлюза по умолчанию:

    route add default gw x.x.x.x

    (Примечание: замените x.x.x.x локальным IP-адресом хоста Windows. Можно найти его путем ввода: ipconfig -all в Windows Command Prompt.)

  2. Затем введите это для установки DNS:

    echo "nameserver y.y.y.y" > /etc/resolv.conf

    (Примечание: замените y.y.y.y адресом сервера DNS в Windows. Можно найти его путем ввода: ipconfig -all в Windows Command Prompt.)

В этом сценарии Windows уже подключен к Интернету. После всей установки можно попытаться теперь использовать Интернет из Linux. Хосты Linux и Windows должны смочь использовать Интернет одновременно.

3
27.01.2020, 20:27
  • 1
    1: он хочет сделать противоположное (совместно используйте Интернет от поля Linux до поля Windows). –  Renan 01.12.2012, 00:11
  • 2
    , но он также заинтересовал делать реверс. вот, я - кавычка его вопрос: действительно ли реверс возможен вместо этого (подключающий Интернет к компьютеру Windows и совместно использующий его с Linux)? –  rnlsgh 02.12.2012, 22:17
  • 3
    , если Вы хотите совместно использовать Интернет от Linux до Windows, я думаю, что ответ выше данного христианином в основном корректен после замены этого: iptables-A ВПЕРЕД-o eth0-s 192.168.0.0/16-m conntrack - ctstate НОВЫЙ-j ПРИНИМАЮТ с этим: iptables-A ВПЕРЕД-i eth1-s 192.168.0.0/16-m conntrack - ctstate НОВЫЙ-j ПРИНИМАЕТ (note:I, только исправляю опечатки:-o eth0, замените-i eth1). плюс на стороне Windows необходимо установить шлюз с IP Linux и адрес DNS с DNS ISP. –  rnlsgh 02.12.2012, 22:51
  • 4
    , но если это не работает, возможно, существует конфликт на правилах iptables. в этом случае перед теми 4 командными строками, возможно, необходимо стереть все предыдущие правила iptables типом это: (1) iptables-F (2) iptables-t туземный-F (3) iptables-X (4) iptables-t туземный-X –  rnlsgh 03.12.2012, 09:05
  • 5
    после всех 8 командных строк необходимо сохранить настройки типом: iptables-сохранить. –  rnlsgh 03.12.2012, 09:16

Наhttps://oracle-base.com/articles/linux/use-iptables-to-implement-packet-filtering-and-configure-natесть простое руководство. Но я обнаружил, что в Windows DNS-адрес, который использует ПК с Linux, также должен быть указан в Windows.

У меня есть USB-модем 3G, подключенный к моему ПК с Linux, и от него у меня есть два ПК с Windows, которые подключаются к Интернету. Это называется (ядро ​​)пересылка пакетов, и это довольно просто и быстро сделать -, когда вы наконец поймете это.

Вам нужно будет узнать имена сетевых интерфейсов, выполнив команду «ifconfig» в Linux (в терминале )и «ipconfig» в Windows (в командной строке ). Имена интерфейсов в Linux находятся слева, например :enp2s0, enp3s0, enp0s18f2u6, lo.Теперь вы настроили упакованную пересылку:

  1. Сначала вам нужно включить пересылку пакетов на вашем ПК с Linux (см. руководство, на которое я дал ссылку с oracle -base.com ).

  2. Затем вы можете запустить эти команды, как сказано в этом руководстве oracle -base.com (, но подождите и читайте дальше):

    sudo iptables -I FORWARD -i мой _lan _интерфейс -o мой _модем _интерфейс -j ACCEPT sudo iptables -I FORWARD -i мой _модем _интерфейс -o мой _lan _интерфейс -j ACCEPT sudo iptables -t nat -I POSTROUTING -o мой _модем _интерфейс -j MASQUERADE

    Но есть более надежный способ, который я нашел в сети:

    sudo iptables -t nat -A POSTROUTING -o мой _модем _интерфейс -j MASQUERADE --random sudo iptables -A FORWARD -i мой _lan _интерфейс -o мой _модем _интерфейс -j ACCEPT sudo iptables -A FORWARD -i мой _модем _интерфейс -o мой _lan _интерфейс -m conntrack --ctstate RELATED,ESTABLISHED -j ACCEPT sudo iptables -A ВПЕРЕД -j DROP

    Вот объяснение команд чуть выше («более надежного» примера ), в том же порядке:

    • Первая команда :включает маскировку на моем _интерфейсе модема _, чтобы исходящий адрес перезаписывался в исходящих пакетах. Случайный флаг --должен иметь симметричный NAT.

    Теперь настроим правила переадресации. iptables по умолчанию будет безоговорочно пересылать весь трафик.Здесь мы предпочитаем ограничивать входящий трафик из Интернета и разрешать весь исходящий:

    • Вторая команда :Разрешить трафик с моего _интерфейса локальной сети _на мой _интерфейс модема _.
    • Третья команда :Разрешить возврат трафика с моего интерфейса _модема _на мой интерфейс _локальной сети _.
    • Четвертая команда :Отбросить весь остальной трафик, который не следует пересылать.

    При перезагрузке ПК с Linux вам придется повторно вводить эти команды. -У меня есть сценарий, запускающий их при каждой загрузке. Вы можете сделать эти изменения постоянными с помощью соответствующего «сервисного» вызова (снова, см. руководство oracle -base.com, приведенное выше ), но я рекомендую запускать их при каждой загрузке (в сценарии ), так как вы, возможно, захотите поэкспериментировать и что-то изменить, а отменить то, что вы сохранили, — еще одна проблема. Если что-то пойдет не так, или вы захотите что-то изменить, или вам просто не нужна эта функция для текущего сеанса (или вообще ), просто перезагрузите компьютер, и они исчезнут -, но вы необходимо самостоятельно отключить пересылку пакетов (перед перезагрузкой прописать «net.ipv4.ip _forward = 0» в /etc/sysctl.conf ), чтобы полностью отключить эту технологию.

  3. Теперь вам нужно создать сетевое соединение (Ethernet-соединение )между вашим ПК с Linux и другими компьютерами. Например:

    • A )На ПК с Linux, подключенном к Интернету (Я использую Fedora ), с помощью диспетчера сетевых подключений я создаю соединение Ethernet, выбираю соответствующий интерфейс (имя сетевой карты, enp3s0 в мой случай ), который подключит этот ПК с Linux к моей локальной сети. Обязательно выберите правильную зону брандмауэра, иначе ваша локальная сеть не получит доступ в Интернет. Итак, поскольку это ваш внутренний интерфейс локальной сети, установите зону брандмауэра как «доверенную», но интерфейс подключения модема должен быть установлен как «общедоступный». Следующий,на вкладке настроек IPv4 установите, что для подключения должен использоваться IPv4 (IPv6 можно игнорировать ), и выберите настройку адреса вручную. Теперь добавьте адрес 192.168.2.100 -, это будет адрес этого ПК с Linux в вашей локальной сети. Сетевая маска будет установлена ​​автоматически (255.255.255.0, потому что это частный адрес )"класса C" (). Примените настройки и подключитесь.

    • B )На втором ПК (с Linux или Windows, подключенном кабелем Ethernet к первому )выше, также создайте сетевое подключение (, если это Windows, подробнее см. ниже ), выберите соответствующий сетевой интерфейс (устройство/карту, которая подключается к первому ПК ), используйте ручную настройку IPv4, как описано выше для первого ПК, но здесь установите адрес 192.168.2.101 -это будет быть адресом этого второго ПК в вашей локальной сети (это «частные» адреса, что означает, что они не будут видны за пределами вашей локальной сети ).

    • B1 )Если вы хотите подключить операционную систему Windows (), перейдите в «Центр управления сетями и общим доступом» -> «Изменить настройки адаптера» и найдите свой сетевой интерфейс, соответствующий вашему Сетевая карта LAN на этом ПК с Windows, который также подключен кабелем Ethernet к первому ПК. Теперь выберите этот интерфейс, щелкните правой кнопкой мыши «Свойства». Вы увидите список. Здесь снимите флажок «Интернет-протокол версии 6» и дважды щелкните «Интернет-протокол версии 4». Теперь вы вводите адрес 192.168.2.101 -, это будет адрес этого ПК с Windows на этом интерфейсе (на этом соединении [LAN/Ethernet] )). Вкладка вниз, чтобы сетевая маска заполнялась автоматически (255.255.255.0 ). («Сетевой профиль» можно установить как «общедоступный».)

    • B2 )Возможно, потребуется установить адрес шлюза для первого ПК с Linux, поэтому вам потребуется ввести адрес шлюза 192.168.2.100.

    • C )Теперь вы должны ввести адрес DNS, который использует ваш первый ПК с Linux. Например, мой модем использует DNS-адрес 192.168.1.1 (, который я могу найти с помощью команды «nmcli device show | grep IP4.DNS», где interfacename — это имя вашего интерфейса Linux, подключенного к Интернету ). (Если вы подключаетесь к Интернету с помощью Windows, запустите «ipconfig» в терминале/командной строке и найдите DNS-адрес ). Вот и все. Информация DNS имеет решающее значение для подключения к Интернету.

Короче говоря,:

Адрес моего модема :192.168.1.100, DNS 192.168.1.1.

Адрес ПК с Linux в локальной сети :192.168.2.100, включена переадресация пакетов с перенаправлением трафика iptables, как описано выше, зона брандмауэра настроена как «доверенная».

ПК с Windows 1, адрес :192.168.2.101 с DNS, установленным на 192.168.1.1, общедоступным сетевым профилем. (В качестве шлюза по умолчанию выбран ПК с Linux :192.168.2.100 ).

Адрес Windows PC 2 :192.168.2.102 с DNS, установленным на 192.168.1.1, общедоступным сетевым профилем. (В качестве шлюза по умолчанию выбран ПК с Linux :192.168.2.100 ).

(Все компьютеры, соединенные вместе простым Ethernet-коммутатором с обычными Ethernet-кабелями (, также называемыми «коммутационными кабелями» или «патч-кордами» ), не пересекаются, поскольку «современные» сетевые карты выполняют пересечение сами по себе, поэтому Вы можете использовать перекрестные кабели или неперекрещенные кабели, даже смешивать их вместе в соединении.)

Существует также руководство по адресу :https://medium.com/@TarunChinmai/sharing-internet-connection-from-a-linux-machine-over-ethernet-a5cbbd775a4f, в котором вместо этого используются DNS-адреса Google. Проверьте это.

0
04.05.2021, 13:20

Чтобы подключить ящик Linux к ящику Windows (для выхода в Интернет ), вам нужна работающая локальная сеть (Ethernet )соединение -, как сказано в моем первом посте здесь. Таким образом, вам нужно самостоятельно назначить статические частные IPv4-адреса на обеих машинах. Возможно, вам также потребуется установить для соединения значение «частное» или «доверенное». После подключения обоих ПК перейдите в «Центр управления сетями и общим доступом» -> «Изменить настройки адаптера» и выберите сетевой интерфейс, соответствующий вашему интернет-соединению. Щелкните правой кнопкой мыши «Свойства» и найдите вкладку, связанную с общим доступом к соединению. Там вы сможете выбрать соединение LAN (Ethernet )для совместного использования с другим ПК.

Возможно, вам потребуется указать DNS на «внутреннем» ПК в локальной сети, как я уже говорил в своем первом сообщении здесь, в этой теме. Поэтому вам нужно будет запустить ipconfig в Windows в командной строке, чтобы узнать, какой DNS вы используете, или использовать DNS 8.8.8.8 и/или 8.8.4.4 от Google.

0
04.05.2021, 13:26

Теги

Похожие вопросы