Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Программная инженерия > Компьютерное железо
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 27.10.2018, 01:08   #1
vasek123
Заблокирован
 
Регистрация: 21.11.2008
Сообщений: 4,988
Сообщение Как можно использовать старый, не нужный компьютер в своих целях.

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

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

В данном топике разрешено выкладывать видео и статьи, главное чтобы все было строго по теме.

И так, поехали:

Цитата:
Предыстория


Лежала как-то небольшая гора металла, из которой удалось собрать:

* Intel Celeron E3300 - двухядерный бомжовский селерон под 775 платформу

* ASUS P5KPL-AM EPU - материнка под 775 платформу с ddr2 памятью (что плохо) и
гигабитным ethernet портом (что хорошо)

* DDR2 плашка на 1 gb оперативки

* Пару жестких дисков на 320 гигов каждый

* БП насколько-то, на сколько не помню (работает же)

* Корпус самый обычный



Первая попытка - установить туда windows server 2012 в целях "попробовать" и учебной практики
(ключик MS дали сами, типа для студентов).



В итоге: с 1 активным пользователем (локальным администратором) использовано
600-700мб из 1000 всего. Не кайф. Где-то в течении месяца на данном ПК висел просто FTP сервер
(filezilla server - отлично работает по ssl и мне показалось что намного проще настраивается, чем дефолтный).

Что интересно: сначала я ради интересна оставил открытым без пароля на запись. сразу (в течении полудня)
положили туда Photo.scr, который быстро гуглится, это было забавно и я доступ на запись закрыл. остались попытки с access denied =)

Но мне это надоело, захотелось что-то новенького.



Все это время роутером (маршрутизатором) между моей локальной сетью и внешним миром (внешний адрес) стоял ASUS RT-N65U.



Схема сети - в принципе обычная для обычного нормального человека.


И так, погнали.

Рассказ будет без бешеных врезок для ctrl-c ctrl-v, а наоборот с объяснением каждого момента!



Непосредственно рассказ



И тут мне пришла в голову идея: а что если взять этот компьютер, вставить туда вторую
сетевую карту, сделать его маршрутизатором (то бишь роутером) и поставить вместо asus'овского роутера?



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



Решено было делать это на базе Ubuntu Server, так как монитор у этого ПК не предполагается и GUI,
соответственно, не нужно. Зашел на официальный сайт, скачал образ х64 последней (на тот момент) 16.04 убунты,
записал на флешку с ultraiso - втыкаю - не загружается =\ , записал еще раз - тоже самое.
Перепробовано 3 метода и 2 образа - не работает, почему было уже лень разбираться.
Достал DVD-RW диск (оттуда же откуда и детали) и записал на него. Загрузилось.



В процессе установки ставлю имя ПК HiroXServer, а имя пользователя mark.



По окончании установки и логина в учетку у меня открывается bash


Теперь с этого момента схема моей сети выглядит так:


Теперь все задачи по маршрутизации трафика должен выполнять тот самый сервер-пк,
через который гоняется весь трафик, а asus'овский аппарат просто служит wifi точкой
доступа и на этом его задачи теперь заканчиваются.



Итак, вернемся к тому, что есть: сервер-пк, к которому подключены 2 провода - один к провайдеру,
второй к коммутатору asus (то что было роутером), отсутствие интернета на всем, в том числе и на сервер-пк. =)



Первым дело я хочу настроить сетевые интерфейсы, их 3:

* lo - loopback - так называемое кольцо, 127.0.0.1, localhost, итд, которое используют некоторые сервисы

* enp3s0 - так у меня называется интерфейс (сетевая карта), что смотрит в сторону провайдера.

* enp1s0 - так у меня называется интерфейс, что смотрит в локальную сеть.


Мой провайдер идентифицирует пользователей по MAC-адресу, а затем выдает мне внешний адрес по
DHCP, значит мне нужно выставить mac-адрес.

Конфигурационный файл лежит тут: /etc/network/interfaces

Открываю его nano /etc/network/interfaces.

И заполняю:



# (тут комментарий) кольцевой интерфейс lo

auto lo

iface lo inet loopback

Последний раз редактировалось vasek123; 27.10.2018 в 01:24.
vasek123 вне форума Ответить с цитированием
Старый 27.10.2018, 01:21   #2
vasek123
Заблокирован
 
Регистрация: 21.11.2008
Сообщений: 4,988
Сообщение Продолжение:

Цитата:
# интерфейс, что смотрит к провайдеру, получает настройки по dhcp на основании mac-адреса

auto enp3s0

iface enp3s0 inet dhcp

hwaddress ether AC:22:0B:XX:XX:XX



# интерфейс, что смотрит у нас в сторону локальной сети имеет статичный адрес 192.168.1.1 и
маску подсети /24, то есть 255.255.255.0

auto enp1s0

iface enp1s0 inet static

address 192.168.1.1

mask 255.255.255.0



CTRL+O (сохранить) -> Enter -> CTRL+X (выходим из редактора)



Интерфейсы настроены, для применения настроек нужно перезагрузить сеть одним из способов:

* перезагрузить компьютер sudo reboot

* перезагрузить саму сеть sudo /etc/init.d/networking restart



Далее запускаем пинг до Google DNS, дабы проверить, что у нас все работает:


Отлично! Значит все сделали правильно. Далее нужно сделать так, чтобы пакеты из локальной сети попадали в интернет.



Когда мы работаем из-под root'а, то есть у нас root@HiroXServer:~# , то дописывать
sudo перед каждой командой не нужно, но если мы работает из под обычного пользователя,
например mark@HiroXServer:~$ , то нужно, иначе система не даст изменять системные файлы.
root - аналог администратора в windows. чтобы зайти в консоль из-под root нужно ввести sudo -i (и ввести пароль)



Первое, что мы делаем - разрешаем пересылку пакетов. Для этого нужно поставить 1
в файл /proc/sys/net/ipv4/ip_forward вручную через nano или такой командой (предварительно зайдя под root через sudo -i ):

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



Второе, что мы делаем: SNAT (Source NAT) или MASQUERADE из локальной сети в интернет.
При этом адрес отправителя (например 192.168.1.2) заменяется на внешний адрес сервер-пк,
из-за чего он правильно доходит к нам обратно.

sudo iptables -t nat -A POSTROUTING -o enp3s0 -s 192.168.1.0/24 -j MASQUERADE

или

sudo iptables -t nat -A POSTROUTING -o enp3s0 -s 192.168.1.0/24 -j SNAT --to-source 228.228.228.228
(вместо этого само собой пишем статичный внешний адрес, а если адрес не статичный чтобы его
каждый раз не выставлять лучше используем MASQUERADE)



Разберем как это работает:

iptables - инструмент для настройки брандмауэра netfilter в linux

-t или аналог --table - таблица, с которой я хочу работать. Их всего 3: основная filter, nat и mangle.

-A или аналог --append - добавить действие вниз в цепочку. Можно еще -I (insert), но тут роли не играет.

POSTROUTING - цепочка в таблице nat, через которую проходят все пакеты, после маршрутизации.
В таблице nat есть еще PREROUTING, INPUT, OUTPUT.

-o - тут указывает из какого интерфейса пакет выходит

-s - указываем из какой сети (!) пакет пришел

-j - указываем действие, которое с этим пакетом нужно совершить



Подробнее об iptables, netfilter и их возможностях можно почитать здесь и здесь.



Далее я рекомендую удалить сразу ubuntu брандмауэр ufw, так как он возможно будет мешать:

sudo apt remove ufw -y



Для того, чтобы убедиться, что у нас все получилось пишем:

sudo iptables -t nat -L



Видим следующее:


В принципе базовая функция маршрутизатора у нас теперь работает работает, но для того
чтобы это ощутить с основого пк в моей схеме нужно: настроить asus'овский агрегат в
режим коммутатора и выставить ему статический ip, а затем выставить на каждом
пк статичный ip. например на настольном ПК у меня будет IP 192.168.1.105.



Первое делается от модели к модели роутеров по разному, в общем нужно заменить режим с
"беспроводной маршрутизатор" на "беспроводная точка доступа". В некоторых роутерах эта
опция называется "Enable NAT" - ее нужно выключить. Также выставить для роутера
статичный IP 192.168.1.2 (в моем случае), маску подсети 255.255.255.0 и основной шлюз 192.168.1.1



Второе - на основном пк идем панель управления -> Центр управления сетями и общим доступом ->
Изменение параметров адаптера -> ПКМ по нашему Wifi соединению, свойства ->
Протокол Интернета версии 4 , свойства и тут вписываем:

* IP-адрес = 192.168.1.105

* Маска подсети = 255.255.255.0 (у меня автоматически вставилась)

* Основной шлюз = 192.168.1.1 (адрес сервер-пк)



* Предпочитаемый DNS-сервер = 8.8.8.8



ОК -> ОК



Вуаля и интернет на основном пк опять вернулся. Можно закончить статью


но ведь долго же на каждом устройстве вводить статичный IP адрес теперь!
И на каждом телефоне придется! Неудобно!



Для этого нужно настроить DHCP-сервер. Эта служба отвечает за автоматическое
присвоение адресов внутри сети на основе рандома или какого-либо правила в конфиге.

Этой службой у нас будет выступать dnsmasq (он же DNS сервер). Попробуйте ввести

dnsmasq -v

Будет ли в ответ что-то типа: "Dnsmasq version 2.76 Copyright (c) 2000-2016 Simon Kelley"?

Если нет, то устанавливаем

sudo apt install dnsmasq -y

и проверяем знакомой командой.



Конфигурационный файл dnsmasq лежит /etc/dnsmasq.conf

Откроем его через nano и заполняем:



# диапазон выдаваемых сервером адресов и время аренды.

# в данном случае у нас зарезервирован 1.2 под asus коммутатор и 54 последних адреса под vpn клиентов и другой живности

dhcp-range=192.168.1.3,192.168.1.200,24h



# так же не забываем указать статичную привязку для себя любимого

dhcp-host=60:A4:4C:XX:XX:XX,Mark-PC,192.168.1.105



# не слушаем интерфейс провайдера enp3s0

no-dhcp-interface=enp3s0



# указываем что он у нас один единственный в сети dhcp сервер

dhcp-authoritative



# указываем файл, где будет написано кому выдан какой ip адрес

dhcp-leasefile=/var/log/dnsmasq.leases



# указываем маску подсети нашей

dhcp-option=2,255.255.255.0



# указываем основной шлюз

dhcp-option=3,192.168.1.1



# указываем присваиваемый DNS

dhcp-option=6,8.8.8.8



CTRL+O (сохранить) -> Enter -> CTRL+X (выходим из редактора)



С полным списком возможных параметров можно ознакомиться здесь.



Перезагружаем dnsmasq:

sudo /etc/init.d/dnsmasq restart



Результат должен быть "ОК"



Убираем из настроек винды на основном пк статическую привязку,
переподключаемся и проверяем что у нас тот же адрес.
При этом остальные устройства в сети получат случайный адрес из диапазона 192.168.1.3~192.168.1.200 автоматически!
В заключение, для того чтобы получить, полноценный маршрутизатор, я бы добавил сетевую карту вроде этой:





p.s. Статья не моя а взята из Данного ресурса Ну а так, для слишком очень древних ПК я бы порекомендовал делать подобные манипуляции во FreeBSD, принцип, примерно, тот же лишь с небольшими разногласиями в плане настроек или же использовал более старую версию Linux Ubuntu.

Последний раз редактировалось vasek123; 27.10.2018 в 01:44.
vasek123 вне форума Ответить с цитированием
Старый 27.10.2018, 09:41   #3
Аватар
Старожил
 
Аватар для Аватар
 
Регистрация: 17.11.2010
Сообщений: 19,042
По умолчанию

Выбросить начинку с элт монитора, поставить мордой вверх, засыпать землей - оригинальный вазон для цветов возле подъезда или на даче

Системный блок с начинкой или без - отличная подставка для герани на лоджии
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
Аватар вне форума Ответить с цитированием
Старый 27.10.2018, 09:45   #4
Alex11223
Старожил
 
Аватар для Alex11223
 
Регистрация: 12.01.2011
Сообщений: 19,500
По умолчанию

Цитата:
Сообщение от vasek123 Посмотреть сообщение
а что если взять этот компьютер, вставить туда вторую
сетевую карту, сделать его маршрутизатором (то бишь роутером) и поставить вместо asus'овского роутера?
Дальше не читал, но основная проблема (особенно с сильно старыми) — он будет шуметь. Если не сделать СО и БП пассивными и убрать механический HDD, но это может получиться не дешево и тогда теряется смысл.
Ушел с форума, https://www.programmersforum.rocks, alex.pantec@gmail.com, https://github.com/AlexP11223
ЛС отключены Аларом.
Alex11223 вне форума Ответить с цитированием
Старый 27.10.2018, 10:07   #5
vasek123
Заблокирован
 
Регистрация: 21.11.2008
Сообщений: 4,988
По умолчанию

Цитата:
Сообщение от Alex11223 Посмотреть сообщение
Дальше не читал, но основная проблема (особенно с сильно старыми) — он будет шуметь. Если не сделать СО и БП пассивными и убрать механический HDD, но это может получиться не дешево и тогда теряется смысл.
Так то оно так, однако, в некоторых случаях это куда дешевле. Кроме всего, можно сообразить неплохой WiFi Роутер на основе данного ПК. Ну а что касается шума, то не знаю как у вас а лично я к нему привык.

Цитата:
Сообщение от Аватар Посмотреть сообщение
Системный блок с начинкой или без - отличная подставка для герани на лоджии
Угу, может, сразу трон сообразим?


Последний раз редактировалось vasek123; 27.10.2018 в 10:10.
vasek123 вне форума Ответить с цитированием
Старый 27.10.2018, 11:39   #6
Немец
Пользователь
 
Регистрация: 19.04.2012
Сообщений: 89
По умолчанию

Я 25 октября 2018 года установил заново ХР
На Ноутбук Samsung P27 года 2006
Буду продавать в детский сад для утренников им надо .
Ну в него почти все сдохло но он еще живой зараза .
Привод умер , аккумулятор само собой умер , блок питания при грозы умер .
Жив пока хард IDE Проц Силирон М 1,4 герца , Мамка , Видюха , клава , в хорошем состоянии , Матрица живая , Корпус в отличном состоянии .
Работал на нем с 2007 по 2016 г
Оперативка 704 мб , Хард 40 гб
Смотрел и думал об апгрейде но не выгодно .
Виндовс 7 потянул но без прог и драйвер на звук не смог никак найти .
Да если кто то хочет записать образ Хр на флэшку только с программой Руфус можно остальные выдают ошибку 18

Код:
 https://www.youtube.com/watch?v=xpdkiwBumdw&t=249s
100% рабочий метод
Образ я имею свои
Немец вне форума Ответить с цитированием
Старый 27.10.2018, 11:50   #7
digitalis
Старожил
 
Аватар для digitalis
 
Регистрация: 04.02.2011
Сообщений: 4,534
По умолчанию

Цитата:
Буду продавать в детский сад
Такую рухлядь и просто подарить бы можно.
"То бензин, а то - дети!" © "Джентльмены удачи"
А как же он без БП работать собирается ?
digitalis вне форума Ответить с цитированием
Старый 27.10.2018, 12:30   #8
Немец
Пользователь
 
Регистрация: 19.04.2012
Сообщений: 89
По умолчанию

Цитата:
Сообщение от digitalis Посмотреть сообщение
Такую рухлядь и просто подарить бы можно.
"То бензин, а то - дети!" © "Джентльмены удачи"
А как же он без БП работать собирается ?
БП есть он сгорел в 14 г
Я новый купил
Кто бы мне подарил нетбук ?
Продам и куплю нетбук асер
Немец вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Старый компьютер Артур Ден Компьютерное железо 8 08.11.2012 07:56
старый компьютер, что в нем возможно применить еще? Пепел Феникса Микроконтроллеры, робототехника, схемотехника, 3D принтеры 4 20.12.2011 20:56
Как наиболее выгодно использовать лишний (второй) компьютер babitch Свободное общение 24 26.02.2011 23:49
Можно ли использовать иконки MS Office в своих прогах Smar Помощь студентам 1 14.01.2009 22:28
Поставить на новый компьютер старый Hard Drive Kopy3 Компьютерное железо 5 22.04.2008 15:30