4

Мне часто приходится передавать файлы по моей домашней сети между компьютерами, и я обнаружил, что передача данных по WiFi на самом деле не лучшая идея. (лицевая сторона) Если у меня есть кабель CAT-5, 5e или 6, как я могу подключить к нему один компьютер напрямую? Если сервер SSH работает на server и я подключаю client к серверу с помощью кабеля CAT-5 непосредственно между ними, могу ли я затем использовать SSH для передачи файлов? Что мне нужно сделать, чтобы настроить что-то подобное? Требуется ли роутер?

4 ответа4

5

Если хотя бы одна сетевая карта компьютера поддерживает функцию автоматического кроссовера, вы можете подключить оба устройства с помощью прямого кабеля. (Автоматический кроссовер, также называемый «auto-MDIX», является частью стандарта Gigabit Ethernet, но очень часто поддерживается и картами 100 Мбит / с.) В противном случае вам понадобится перекрестный кабель, концентратор или коммутатор.

После настройки физического соединения настройте сеть в ОС:

  • Если оба конца имеют IPv6, вы можете просто подключиться, используя локальный адрес другого компьютера; например, ssh fe80::4a5d:60ff:fee8:658f%eth0. (В Linux строка после % является именем вашей карты Ethernet, в то время как Windows использует числовой идентификатор интерфейса из netsh interface ipv6 show interface .)

    Вы также можете добавить более короткие адреса вручную, например, fc00::1 и fc00::2 (из сети fc00::/7).

  • Для хостов, использующих только IPv4, вручную назначьте IP-адреса из одной подсети - например, 10.0.0.1/8 и 10.0.0.2/8 .

    Некоторые операционные системы автоматически назначают локальные IPv4-адреса в диапазоне 169.254.0.0/16 .

2

Я бы порекомендовал вам использовать сервер rsync на одной из машин, чтобы избежать обработки шифрования ssh, которая может обеспечить более высокую пропускную способность, особенно на низкоскоростных процессорах:

На "серверном" компьютере создайте себе файл rsyncd.conf, содержащий что-то вроде:

[download]
comment =       Storage general files
path =          /home/user/Download
read only =     false
write only =    false
list =          true
incoming chmod = Du=rwx,go=rx,Fu=rw,go=r
uid =           user
gid =           user

Затем запустите rsync в режиме "сервер":

sudo rsync --daemon --config=rsyncd.conf  --no-detach --log-file=/dev/tty

Затем на клиенте, чтобы получить:

rsync rsync://host/download/file-name local-file-name

или отправить:

rsync local-file-name rsync://host/download/file-name

Когда вы закончите, просто нажмите CTRL-C серверный процесс.

1

Краткая версия этого:

  • Если хотя бы один из компьютеров имеет гигабитный интерфейс или поддерживает MDI/MDX, маршрутизатор не требуется. Подключите простой кабель CAT5E или лучше.
  • Из обеих карт 10/100 Мбит используют кросс-кабель или два обычных кабеля и коммутатор.

Затем настройте оба компьютера в одной подсети и настройте маршрутизацию. (Смотрите это на нашем родственном сайте: как-работает-ipv4-subnetting-работает для фона).

Вы не упомянули, какую операционную систему вы используете, но предполагаете, что Unix похож на:

  • Компьютер 1: ifconfig em0 192.168.0.1 маска сети 255.255.255.0 (замените em0 именем интерфейса).
  • Компьютер 2: ifconfig em0 192.168.0.2 маска сети 255.255.255.0
    Обе сетевые карты теперь настроены на одну и ту же локальную сеть.
  • Ваша ОС может автоматически добавлять маршруты в локальную сеть. Если не используется route add -net 192.168.0.0 mask 255.255.255.0 192.168.0.1 на компьютер 1. Сделайте то же самое на компьютере 2 с route add -net 192.168.0.0 mask 255.255.255.0 192.168.0.2

Проверьте соединение с помощью ping или скопируйте с помощью scp.

(Клиент:~ homedir> scp myfile 192.1.68.0.2:Destination_folder)

0

Вам нужно будет либо установить мост на сервере (S) с обычной сетью, а затем подключить клиента (C) к указанной сети (по IP) или использовать собственную подсеть. Последнее довольно просто (при этом eth0 является подключенным интерфейсом на клиенте и сервере):

C # ip addr add 10.0.1.2/24 dev eth0
S # ip addr add 10.0.1.1/24 dev eth0

на этом этапе C # ping 10.0.1.1 должен работать. Если SSH-сервер на S настроен на прослушивание на всех интерфейсах (т. 0.0.0.0), вы должны быть готовы к работе, в противном случае вам придется его там прослушивать (адаптируя /etc/ssh/sshd_config).

Если вы не получаете ожидаемые скорости, убедитесь (через ethtool eth0), что скорость соединения определена правильно. Вы можете изменить его, используя тот же инструмент.

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