Как расшарить (раздать) Интернет по сети Ubuntu Linux и Windows

При соединении компьютеров по локальной сети можно совместно использовать не только файлы и папки, как это описано в статье Локальная сеть между Ubuntu Linux и MS Windows, но и самое значительное достижение человеческой цивилизации - Интернет.

В этой статье будет рассмотрен простейший случай локальной сети - одноранговая полностью доверенная сеть. Или, если проще выражаться, соединены несколько равноценных компьютеров и доступ разрешен всем ко всем. Именно это наиболее актуально для домашних сетей и маленьких компаний. И такие сети все чаще становятся гетерогенными, то есть кроме всеми известной и любимой ОС MS Windows, появляется ОС GNU/Linux.

Для начала немного теории. Раздача или расшаривание Интернет, это выражение просторечное, у специалистов же это называется создание Интернет-шлюза, а компания Microsoft называет это Internet Connection Sharing. Но как это ни назови, суть одна и та же - к Интернет подключается лишь одни из компьютеров локальной сети, а остальные компьютеры "получают" Интернет с него. Такой компьютер и называется Интернет-шлюз, его работа заключается в том, чтобы получать запросы от локальной сети и передавать эти запросы "в Интернет" и затем получив "из Интернета" ответы, отправить их в локальную сеть. Сложно? Но на практике все вполне просто.

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

В этой статье будет описано как настроить Интернет по локальной сети между Ubuntu Linux и Windows в самом простейшем варианте - максимально быстро и с минимальными знаниями и навыками.

Вариант 1, расшарить (раздать) Интернет с Windows на Ubuntu Linux

Для начала нужно убедиться, что на компьютере бесперебойно работают и подключение к Интернет и к локальной сети. При настройке Интернет-шлюза не имеет значения, каким образом компьютер подключен к Интернет и к локальной сети. Например подключение к Интернет может быть Dial-up типа через сотовый 3G или 4G USB модем. А к локальной сети компьютер может быть подключен через проводную Ethernet сетевую карту или беспроводную карту Wi-fi.

Шаг первый, настройка Windows

Настройка Интернет-шлюза будет показана на примере Windows XP, но для Windows 7 все делается точно так же.

Нажать на клавиатуре клавиши Windows+R и в открывшемся окне вписать "ncpa.cpl" и нажать кнопку "Ок":

В списке доступных сетевых подключений нужно выбрать то, через которое компьютер подключается к Интернет, затем нажать на нем правую кнопку мыши и выбрать строку меню "Свойства":

Примечание. "Сетевое окружение" можно открыть и другими способами - через меню "Пуск - Настройка" и через "Панель управления" в элементе "Мой компьютер".

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

После нажатия кнопки "Ок", в Windows будет включена переадресация Интернет трафика между двумя сетевыми интерфейсами. После этого можно настраивать компьютеры в локальной сети, для того, чтобы они могли получать трафик с Интернет-шлюза. Для этого нужно узнать какой Интернет-адрес Windows присвоила тому соединению, которую подключена локальная сеть, это можно сделать открыв окно "Свойства" этого соединения. В этом окне нужно открыть вкладку "Общие", затем выделить "Протокол Интернета TCP\IP" и нажать кнопку "Свойства". Откроется новое окно и в нем будет вписан адрес этого соединения. Этот адрес нужно запомнить или записать. Именно этот адрес нужно будет использовать при настройке компьютеров локальной сети:

По умолчанию Windows XP использует адрес 192.168.0.1, а Windows 7 192.168.137.1.

Шаг второй, настройка Ubuntu Linux

На компьютере(ах) с ОС Ubuntu Linux, которые должны "получить" Интернет, нужно всего лишь указать адрес Интернет-шлюза в настройках того сетевого подключения, через которое этот компьютер подключен к локальной сети. Сделать это можно как через графический интерфейс, так и через консольную команду.

Настройка через графический интерфейс.

Откройте список сетевых подключений, через значок "Сеть" в трее или через меню "Система - Параметры - Сетевые соединения":

В окне с перечнем соединений выберите то, через которое этот компьютер подключен к локальной сети, выделите его и нажмите кнопку "Изменить":

Далее, в новом окне откройте вкладку "Параметры IPv4" и укажите метод "Вручную", впишите адрес для этого подключения, а также адрес Интернет-шлюза:

Затем нажмите кнопку "Применить".

Все готово, можно пользоваться Интернет.

Через консоль то же самое можно сделать одной командой "sudo route add default gw 192.168.0.1 eth0":

Примечание. Консольную команду нужно повторять после перезагрузки Linux.

Вариант 2, расшарить (раздать) Интернет с Ubuntu Linux на Windows

Порядок такой же как и в первом варианте, сначала настраивается компьютер-шлюз, который подключен к Интернет, затем клиенты. Только в этом случае Интернет-шлюз будет на ОС Ubuntu Linux.

Шаг первый, настройка Интернет-шлюза на ОС Ubuntu Linux

Для начала нужно убедиться, что на компьютере бесперебойно работают и подключение к Интернет и к локальной сети. При настройке Интернет-шлюза не имеет значения, каким образом компьютер подключен к Интернет и к локальной сети. Например подключение к Интернет может быть Dial-up типа через сотовый 3G или 4G USB модем. А к локальной сети компьютер может быть подключен через проводную Ethernet сетевую карту или беспроводную карту Wi-fi.

Настройка через графический интерфейс.

Откройте список сетевых подключений, через значок "Сеть" в трее или через меню "Система - Параметры - Сетевые соединения". В окне с перечнем соединений выберите то, через которое этот компьютер подключен к локальной сети, выделите его и нажмите кнопку "Изменить". Далее, в новом окне откройте вкладку "Параметры IPv4" и укажите метод "Общий с другими компьютерами":

После перезапуска службы "Network Manager" начнет работать переадресация Интернет трафика между двумя сетевыми интерфейсами. Перезапуск Network Manager происходит при перезагрузке Ubuntu Linux, но можно это сделать вручную, если в консоли выполнить команду "sudo service network-manager restart" или "sudo /etc/init.d/NetworkManager restart".

После этого нужно узнать адрес, который Network Manager присвоил вашему сетевому интерфейсу. Это можно сделать через консоль, набрав там команду "ifconfig -a" и затем, в результатах этой команды найти нужный интерфейс. Например "eth0 .... inet addr:10.42.43.1". Этот адрес (10.42.43.1) нужно будет использовать на компьютерах в локальной сети как адрес Интернет-шлюза.

Через консоль то же самое можно сделать двумя командами:

    1. sudo echo 1 > /proc/sys/net/ipv4/ip_forward

    2. sudo iptables -t nat -A POSTROUTING -s 192.168.1.0/24 -o ppp0 -j MASQUERADE

Примечание. Адрес "192.168.1.0/24" нужно заменить на адрес вашей локальной сети.

Вместо двух команд можно сделать скрипт:

И точно так же, нужно знать адрес вашего сетевого интерфейса локальной сети для настройки компьютеров-клиентов.

Примечание. При использовании консольных команд или скрипта, их нужно будет выполнять при каждом запуске Linux.

Шаг второй, настройка Windows

На компьютере(ах) с ОС Windows, которые должны "получить" Интернет, нужно всего лишь указать адрес Интернет-шлюза в настройках того сетевого подключения, через которое этот компьютер подключен к локальной сети. Открываете "Сетевые подключения", далее свойства нужного подключения, далее вкладка "Общие", затем выделить "Протокол Интернета TCP\IP" и нажать кнопку "Свойства":

и в этом окне вписать адрес Интернет-шлюза.

Важно помнить, что:

    1. Адрес шлюза должен совпадать с адресом сетевого интерфейса на компьютере-шлюзе.

    2. Собственный адрес компьютера должен быть из той же подсети. Подсеть это первые три группы цифр адреса, в этом примере подсеть "192.168.0"

правильно:

неправильно:

Собственный адрес компьютера и адрес шлюза в разных подсетях!

Примечания

Существуют и другие способы совместного использования Интернет по локальной сети, например можно "раздавать" Интернет при помощи специальной программы - прокси-сервер.

В этой статье не определены меры по обеспечению безопасности Интернет-шлюза и локальной сети от проникновения из Интернет. Наипростейшие способы такой защиты:

    • Использовать в качестве Интернет-шлюза ОС Ubuntu Linux.

    • Если вы используете в качестве Интернет-шлюза ОС Windows, установите какой-либо комплекс антивирус + файерволл, например Касперский Интернет Секьюрити.

При настройке компьютеров-клиентов, можно указывать не только адрес шлюза, но и адреса DNS серверов. В качестве DNS сервера можно указать:

    1. Адрес Интернет-шлюза.

    2. Адреса DNS серверов вашего Интернет-провайдера.

    3. Адреса любых DNS серверов, которые стабильно доступны в сети.

Сопутствующие статьи:

Локальная сеть между Ubuntu Linux и MS Windows

http://ru.d-ws.biz/articles/icsLinuxAndWindows.shtml