Я запускаю экземпляр сервера MySQL (5.6), порт 3306, на виртуальной машине Ubuntu (14.04 LTS). Сотрудники используют клиентское приложение для взаимодействия с базой данных.
Периодически я получаю вызов для устранения неполадок, когда пользователь не может подключиться, с ошибкой:
Невозможно подключиться к любому из указанных хостов MySQL.
Журнал ошибок MySQL не содержит данных об отказе или отказе в соединении для пользователя.
Перезапуск машины (а не только MySQL) решает проблему.
Я определил, что это связано с тем, что клиентским машинам назначен другой IP-адрес. Я также определил, что перезапуск сетевой службы Ubuntu тоже решает проблему.
Я подозреваю, что здесь работает функция сетевой безопасности, но я не могу понять, что это такое. Я бы хотел знать:
Редактировать:
Настройка межсетевого экрана: ufw
неактивен, iptables
Я считаю, что это "заводская установка по умолчанию"
Хм, большинство настроек, которые я видел, используются ufw
по умолчанию. Но это сказал
Да, с ufw это:
sudo service ufw status
С iptables это:
sudo iptables -L -v
С ufw (при условии, что ваша локальная сеть находится на 192.168.1.0/24:
sudo ufw allow all from 192.168.1.0/24 to any port 3306
С помощью iptables
sudo iptables -I INPUT 2 -m tcp -p tcp --dport 3306 -s 192.168.1.0/24 -m comment --comment 'Allow all traffic from the local LAN'
Кстати, по моему опыту, ubuntu 14.04 имеет нестабильный сетевой стек. На паре наших серверов сеть продолжала умирать, и в итоге мы выбросили машины в пользу centos 7. YMMV.