Действительно разбираетесь в нетворкинге?[закрыто]

StackOverflow https://stackoverflow.com/questions/1605112

  •  05-07-2019
  •  | 
  •  

Вопрос

Я разбираюсь в основах сетевых технологий, таких как локальная сеть и прочее.Я знаю, что такое многие протоколы и как создать программу сокета клиент / сервер на C.Но чего я действительно хочу, так это очень хорошего понимания того, как на самом деле работают сети.Не только с точки зрения программирования, но и с точки зрения приложения.Я ищу какой-нибудь материал (желательно книгу), который даст мне очень хорошую основу для продолжения работы.Я нахожусь в процессе становления программистом или администратором UNIX, поэтому мне действительно следует изучить и знать, как применять основы сетевого взаимодействия.

Существует ли какой-нибудь такой краткий ресурс?Было бы лучше пойти по более академическому пути, купив книгу по сетевому взаимодействию (например, у Таненбаума или Куросе), или лучше пойти по ИТ-пути, возможно, заглянув в учебники по сетевому администрированию или сертификации?

Большое вам всем спасибо.

Это было полезно?

Решение

Книга покойного Ричарда Стивенса - шедевр, гораздо более практичный и немедленно применимо, чем у Таненбаума (не изучал Куросе). Кстати, тем же автором, я так же горячо рекомендую книги в «Проиллюстрированном TCP / IP». серии и расширенное программирование в среде Unix - немногие книги более важны для хочу быть "программистом или администратором Unix", возможно, сохраните ESR !

Другие советы

Вот способ, который я бы порекомендовал:

  • Узнайте, как развивался Интернет, это дало бы вам причину, по которой он был им нужен
  • Изучите различные протоколы - HTTP, telnet, ssh, особенно безопасные SFTP, HTTPS и т. Д
  • Узнайте, что такое розетки и их типы
  • Узнайте, как вы можете программировать сокеты.Я предлагаю вам использовать Сокеты Python для выполнения программирования
  • Изучите сетевой стек TCP/IP.Это было бы полезно
  • Узнайте как маршрутизационные работы, это важно для обучения
  • Постарайтесь хорошо разбираться в таких темах, как DNS, это очень важно
  • Получите VirtualBox, установите различные операционные системы и попробуйте подключить их к сети.Поиграйте с сетевым стеком операционной системы.

Мне как-то неясно, что именно вы ищете, поэтому я просто добавлю это:

Начните создавать свои собственные сети вместе. Создать ЛВС. Пойди разберись, как создать и управлять брандмауэром Linux вместо потребительского. Установите Active Directory только для улыбок. Запустите свои собственные серверы DHCP и DNS на этом сервере Active Directory.

Как только вы доберетесь до этого, если вы все еще заинтересованы, начните думать о том, как бы вы планировали свою локальную сеть, если бы у вас было 500 компьютеров. Узнайте о виртуальных локальных сетях (VLAN).

Я думаю, что создание сетей, в частности, является отличным местом для начала работы, потому что A) никто не пострадает, B) это в основном бесплатно.

Вау .. сетевое взаимодействие - это очень большое поле. Чтобы по-настоящему понять все, потребуется доктор наук или несколько докторов наук.

Вот некоторые аспекты, которые, я думаю, вам необходимо изучить.

1) Вам необходимо изучить историю создания сетей. Многие из политик, встроенных в протоколы, были сделаны из-за нехватки времени. Изучите историю протоколов, чтобы узнать " Почему " о том, как это работает.

2) Программирование является отличным источником знаний о том, как сеть работает на самом низком уровне. Научитесь писать некоторый код сокета на C. Сокеты BSD - хорошее место для начала. Вы можете найти множество ссылок на разъемы BSD в Интернете.

3) * Команды nix предоставляют богатые знания по настройке и управлению сетями. Хорошие сетевые администраторы знают много хитростей о том, как создавать сложные сетевые операции, используя только самые основные сетевые инструменты. Сетевые инструменты GNU - хорошее место для начала.

4) Если есть возможность, есть несколько сертификатов, таких как MCSE и CCNA, которые имеют модули для работы в сети. Эти документы могут быть полезны для получения знаний о конкретном типе сети. Я много узнал о моделях доменов Windows NT, сидя на бумаге для MCSE, хотя никогда особо не играл с доменами.

Есть больше аспектов. Спросите себя, что вам больше нравится?

немного личного опыта. Я работал разработчиком программного обеспечения в течение 10 лет. Я также "неоплаченный" Сетевой гуру в моём офисе. Так или иначе, я должен носить более 1 шляпу как разработчик, потому что работа в сети является частью программного обеспечения, над которым я работаю.

В качестве основы вы можете получить W. Ричард Стивенс Классик, TCP / IP Illustrated и, возможно, другие его книги. их больше не будет .

Звучит так, как будто вы ищете понимание, которое действительно может быть достигнуто только через опыт. Каждый человек будет по-разному смотреть на вещи, в зависимости от того, что для них имеет смысл - объяснения могут помочь, но ничто не заменит обучения фактическим решением проблем.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top