0 / 0 / 1
Регистрация: 28.08.2016
Сообщений: 25
|
|
1 | |
Передача текста по сокетам10.06.2017, 11:57. Показов 1628. Ответов 13
Метки нет (Все метки)
Здравствуйте Уважаемые,
Основная ОС винда 8-ая, установил виртуальную ОС Убунту через VMware. Вопрос такой, можно ли написать клиента на винде, а сервера на убунту и реализовать обмен сообщениями между ними? Если да, то можно ли это осуществить на сокетах? И еще вопрос, может это и другой топик, но все же... Виртуальная машина и Основная сичтаются как отдельные устройства и имеют различные адреса? Если можно на пальцах господа, знания в комп. сетях скудные. Заранее благодарен всем друзья!
0
|
10.06.2017, 11:57 | |
Ответы с готовыми решениями:
13
Передача русского текста по сокетам Передача по сокетам данные Передача информации по сокетам Передача больших файлов по сокетам |
322 / 170 / 24
Регистрация: 25.03.2012
Сообщений: 712
|
|
10.06.2017, 12:46 | 2 |
Элементарно.
Берёте любой пример клиент-серверного кода (лучше из Linux). Главное, не забываем (не пропускаем) функции преобразования сетевого порядка байт: hton(), ntoh() и т.д. - сетевой порядок у Windows и Linux отличаются. Они не считаются устройствами. Но у них есть сетевые интерфейсы, взаимодействующие между собой. И сетевые интерфейсы на гостевой машине и на хостовой машине имеют, естественно, разные IP. Но принадлежащие (по маске) к одной подсети.
1
|
0 / 0 / 1
Регистрация: 28.08.2016
Сообщений: 25
|
|||||||||||
10.06.2017, 13:40 [ТС] | 3 | ||||||||||
Спасибо за ваш ответ Olej!
Не могли бы вы прояснить еще пару моментов... Нашел и реализовал клиент-сервера на ВМ Убунту, рабоатет! Даже понятия не имею как можно этот же сервер написать на винде, т.к. сокеты там кажется по другому пишутся. Плюс не знаю какие там айпи прописывать. Сервер
0
|
322 / 170 / 24
Регистрация: 25.03.2012
Сообщений: 712
|
|
10.06.2017, 15:09 | 4 |
На выньде сокеты синтаксически записываются по-другому ... через задницу, как обычно.
Но суть остаётся та же. IP гляньте в своём Linux командой: Код
$ ip address Код
$ ifconfig
0
|
0 / 0 / 1
Регистрация: 28.08.2016
Сообщений: 25
|
|
10.06.2017, 15:51 [ТС] | 5 |
Спасибо Olej, вбил в терминал команду то что мне выдало показано в приложенном скриншоте, посмотрите плз. Который из них мой айпи?
А как узнать айпи на выньде? И если допустим я подключусь к другой сети вайфай поменяется ли мой айпи или айпи всегда один и тот же независимо от того к какой сети подключаешься? Спасибо!
0
|
322 / 170 / 24
Регистрация: 25.03.2012
Сообщений: 712
|
|
10.06.2017, 17:34 | 6 |
Сообщение было отмечено Axel92 как решение
Решение
192.168.160.128
Добавлено через 3 минуты С большой вероятностью - 192.168.160.1 ... я не помню что там в VMware. Можете ping на этот адрес из Linux и проверить. Добавлено через 1 минуту Ну, во-первых, внаружу (к WiFi и т.д.) вы подключаетесь из выньды, через другой сетевой интерфейс, и с IP из другой подсети. IP адреса в виртуальной сети у вас всегда останутся неизменными.
1
|
0 / 0 / 1
Регистрация: 28.08.2016
Сообщений: 25
|
|
11.06.2017, 06:49 [ТС] | 7 |
Спасибо огромное!
И последний вопрос, ввожу в cmd (уже на выньде) ipconfig выдает мне следующее зрелище(приложенный рисунок). Огромная куча айпи, как мне узнать какое из них мое айпи?
0
|
1786 / 1036 / 445
Регистрация: 12.05.2016
Сообщений: 2,550
|
|
11.06.2017, 06:57 | 8 |
0
|
0 / 0 / 1
Регистрация: 28.08.2016
Сообщений: 25
|
|
11.06.2017, 07:12 [ТС] | 9 |
Да, по ответу выше я понял что мой айпи 192.168.160.1.
Тут 2 ethernet адаптера один VMnet1 с айпи 192.168.136.1, другой VMnet8 с айпи 192.168.160.1. Как узнать который из них мой?
0
|
0 / 0 / 1
Регистрация: 28.08.2016
Сообщений: 25
|
|
11.06.2017, 07:16 [ТС] | 10 |
И почему когда я ищу свой айпи по гуглу сайты выдают мне вот такое вот:
0
|
1786 / 1036 / 445
Регистрация: 12.05.2016
Сообщений: 2,550
|
|
11.06.2017, 07:38 | 11 |
Axel92, Вам бы почитать про маршрутизацию.
0
|
322 / 170 / 24
Регистрация: 25.03.2012
Сообщений: 712
|
|
11.06.2017, 11:36 | 12 |
Тот, который по подсетке (по маске) совпадает с вашим IP виртуальной машины.
Как я и предполагал, это 192.168.160.1 Сделайте на него из терминала Linux: Код
$ ping 192.168.160.1 Потому что эта ваш "внешний" IP внаружу, в Интернет, который вам выдаёт ваш провайдер.
0
|
0 / 0 / 1
Регистрация: 28.08.2016
Сообщений: 25
|
|
12.06.2017, 06:50 [ТС] | 13 |
Уважаемый Олеж,
Вчера весь день читал про сети, точнее про айпи, LANы, WANы. То что я понял касаемо "внешнего" и "внутреннего" IP я постараюсь описать. Если где то буду неправ пожалуйста поправьте. Допустим мне домой нужно подключить интернет. Для этого вызываю инет провайдера, он устанавливает роутер и приписывает ему айпи, который и является "внешним". В свою очередь роутер создает локальную сеть всех девайсов которые через него выходят в инет и прописывает каждому айпи, который в свою очередь является "внутренним". То есть непосредственный обмен пакетами с веб сервером, скажем с вк, осуществляет сам роутер через внешний айпи и потом уже сам отправляет на локальный айпи нужного девайса? Я правильно все понял? Cпасибо!
0
|
322 / 170 / 24
Регистрация: 25.03.2012
Сообщений: 712
|
|
12.06.2017, 22:24 | 14 |
Я, наверное, не давал вам ссылку: Сетевое программирование в Linux.
Там становится понятно как сетевые пакеты проходят и сквозь уровень прикладных приложений + как они обрабатываются в ядре Linux. P.S. Я не могу вам в деталях рассказывать здесь как работает сеть TCP/IP ... у людей на понимание этого и год уходит и более... Читайте книгу Р.Стивенса "TCP/IP в подлиннике".
0
|
12.06.2017, 22:24 | |
12.06.2017, 22:24 | |
Помогаю со студенческими работами здесь
14
Приём-передача файлов по Сокетам Передача аудио-стрима по сокетам [MFC] Передача текста в MDI окно, чтение текста из окна Передача текста в textEdit текста из функции Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |