Мне любопытно, можно ли сопоставить сокет UNIX с гнездом INET. Ситуация просто заключается в том, что я хотел бы подключиться к серверу MySQL. К сожалению, у него отключены разъемы INET, поэтому я могу подключаться только к UNIX-сокетам. Инструменты, которые я использую/записываю, должны подключаться к сокету INET, поэтому я пытаюсь проверить, могу ли я сопоставить один с другим.Как я могу сопоставить локальный сокет unix со встроенным сокетом?
Потребовалось много места, но я нашел socat, который якобы делает то, что я ищу. Мне было интересно, есть ли у кого-нибудь предложения о том, как это сделать. Командной строки Я использую (с частичным успехом) является:
socat -v UNIX-CONNECT:/var/lib/mysql/mysql.sock TCP-LISTEN:6666,reuseaddr
Теперь я могу сделать связи и общаться с сервером. К сожалению, все попытки сделать несколько подключений завершены неудачно, поскольку мне нужно использовать опцию fork, но этот параметр, по-видимому, делает соединения нефункциональными.
Я знаю, что могу решить проблему с Perl (мой предпочтительный язык), но я бы предпочел не писать всю реализацию сам. Я знаком с библиотеками IO :: Socket, я просто надеюсь, что у кого-то есть опыт такого рода вещей. Открыт для предложений/идей.
Спасибо.
Спасибо, это именно то, что я искал. Удивительно, какая глупая ошибка. – Danny