
Хорошо, во-первых, у меня система с двойной загрузкой. Linux Mint 18 (Sarah) Cinnamon и Windows 7 SP1. Хорошо, что я это сделал, потому что я новичок в Linux.
Когда я впервые установил Windows и Linux, я настроил LAN1 как 192.168.1.1/255.255.255.0. У меня не было проблем с доступом к LAN1 или Интернету из любой ОС.
Недавно я решил создать подсеть. Я изменил LAN1 на 192.168.64.80/255.255.255.240. Это дало мне xxx80 в качестве шлюза, 14 используемых IP-адресов как xxx81-xxx94, чего вполне достаточно, и xxx95 в качестве широковещательного. Затем я перезагрузил маршрутизатор, и новые IP-адреса были распространены через DHCP. Сетевые службы Windows получили данные DHCP, и я смог получить доступ к LAN1 и Интернету без проблем. Попробовал то же самое с Linux, но не могу получить доступ ни к чему на LAN1 или в Интернет. Проверив как сетевой апплет на рабочем столе, так и ifconfig через терминал, стало ясно, что Linux знает о новых данных DHCP. Поэтому я не понимаю, почему я не могу получить доступ ни к чему!
Знает ли кто-нибудь особенности сетевых технологий Linux, позволяющие исправить то, что явно требует ремонта?
Заранее спасибо.
решение1
Я думаю, что ваша проблема в том, что вы пытаетесь использовать сетевой адрес в качестве адреса шлюза, но вы не можете этого сделать. Шлюз — это хост в сети, и у него должен быть адрес хоста. Шлюз — это хост, на который все остальные хосты отправляют трафик, предназначенный для другой сети, но он все еще является хостом в сети и должен использовать адрес хоста. Сетевой адрес непригоден для использования, и он не должен появляться как адрес источника или назначения в любых пакетах IPv4.
Для вашего примера 192.168.64.80/28
:
Network = 192.168.64.80
First host = 192.168.64.81
Last host = 192.168.64.94
Broadcast = 192.168.64.95
Вам необходимо выбрать адрес шлюза из одного из адресов хоста. Некоторые используют первый адрес хоста в качестве стандартного адреса для шлюза, а некоторые используют последний адрес хоста. Некоторые просто выбирают любой адрес хоста. На самом деле это не имеет значения, так как шлюз является хостом в сети.
решение2
Маршрутизаторы Cisco имеют глобальную команду конфигурацииip подсеть-нольчто позволяет использовать сетевой адрес в качестве хоста. Однако не все реализации IP поддерживают это по умолчанию, как в данном случае.
Однако более поздние версии IOS, похоже, позволилиip подсеть-нольпо умолчанию, и поэтому ваш маршрутизатор, вероятно, не выжил из ума, раз позволяет вам настроить его таким образом.
Однако ваш Linux-бокс может быть не настроен на использование подсети 0. Может быть настройка sysctl
; могут быть некоторые дополнительные ifconfig
или route
флаги для установки использования подсети 0. Однако я не использую Linux и поэтому не могу проверить, работают ли какие-либо из найденных в Google методов использования подсети 0, как задумано.
С сайта cisco нанастройка подсети-ноль..
Подсети с адресом подсети 0 незаконны и настоятельно не рекомендуются (как указано в RFC 791) из-за путаницы, которая может возникнуть между сетью и подсетью, имеющими одинаковые адреса. Например, если сеть 131.108.0.0 подсетью 255.255.255.0, подсеть 0 будет записана как 131.108.0.0, что идентично сетевому адресу.
Вы можете использовать подсеть из всех нулей и всех единиц (131.108.255.0), хотя это не рекомендуется. Конфигурирование интерфейсов для подсети из всех единиц явно разрешено. Однако, если вам нужно все пространство подсети для ваших IP-адресов ... (используйте команду, выделенную жирным курсивом выше)
решение3
У Linux с этим проблем нет. Когда я сталкивался с такими проблемами, это обычно было что-то из следующего:
Установленный в ОС брандмауэр по умолчанию, проверьте с помощью:
sudo iptables -nvxL
(обратите внимание также на политику)
Опечатка в конфигурации сети - на клиенте или сервере.
- Опечатка в команде конфигурации, например
ifconfig
- она может настроить совершенно фиктивные адреса, а некоторые реализации не принимают/28
нотацию CIDR ( ), вам придется вводить ее вручную или использовать ключевое слово "netmask". Дублирующиеся MAC-адреса
cat /proc/net/arp
IP-адрес в том же диапазоне на другом сетевом интерфейсе
- Вирусное заражение роутера, проверьте прошивку
- Сетевой коммутатор с зависшими портами, перезагрузите его