Некоторое знание Linux, обычно используемого в работе (сетевая глава)

задняя часть

"Это 6-й день моего участия в августовском испытании обновлений, подробности о событии:Испытание августовского обновления"

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

  1. Проверьте, можно ли пропинговать доменное имя/IP
  2. Посмотрите, не работает ли конкретный порт

Проверьте подключение к сети

Сценарий приложения: взаимодействие внешнего и внутреннего интерфейса, внешнему интерфейсу требуется доступ к интерфейсу внутреннего интерфейса, а иногда к нему нет доступа.Сначала вы можете проверить, подключена ли сеть, и пропинговать внутренний порт. , Если он не подключен, это означает, что другая сторона открыла брандмауэр.

ping baidu.com

Результат выглядит следующим образом:

ping baidu.com
PING baidu.com (220.181.38.148) 56(84) bytes of data.
64 bytes from 220.181.38.148 (220.181.38.148): icmp_seq=1 ttl=49 time=26.6 ms
64 bytes from 220.181.38.148 (220.181.38.148): icmp_seq=2 ttl=49 time=26.4 ms

Обратите внимание, что имя также получит IP-адрес, соответствующий доменному имени, например 220.181.38.148 на рисунке выше.

Вышеупомянутый ввод действителен, если нет, он застрянет, а вывод будет следующим:

ping google.com
PING google.com (93.46.8.90) 56(84) bytes of data.

Проверьте, не работает ли порт

В целях безопасности сервер часто открывает только некоторые порты.Используйте порт telnet, чтобы проверить, открыт порт или нет.

telnet juejin.cn 443

Если порт работает, вывод будет следующим:

Trying 119.96.138.242...
Connected to juejin.cn.
Escape character is '^]'.

Если это не работает, вывод будет следующим:

telnet juejin.cn 8080
Trying 119.96.137.241...

или вывод следующий

telnet raasr.xfyun.cn 19999
Trying 42.62.43.138...
Connected to e62acf7b4f2de86dd5dcf0748c6c8a1d.iflysec.com.
Escape character is '^]'.
Connection closed by foreign host.

Если порт сервера недоступен, мы можем вручную открыть некоторые порты.Способ открытия и закрытия портов следующий:Woohoo. Краткое описание.com/afraid/not 3068288's…

Предпосылка заключается в том, что вам нужно использовать пользователя root для работы

Протестировать интерфейс на сервере

В локальной среде для тестирования интерфейса у нас есть инструмент графического интерфейса, такой как почтальон, но на сервере его нет.Если мы хотим проверить ответ данных интерфейса на сервере, мы можем использовать команду curl

Я случайно нашел интерфейс из Сети консоли Nuggets для тестирования

curl https://api.juejin.cn/tag_api/v1/query_category_briefs\?

Результат выглядит следующим образом:

image.png

Мы также можем просто посмотреть заголовки ответов, используя параметр -I.

 curl -I https://juejin.cn/user/4388906148312295

Результат выглядит следующим образом:

HTTP/1.1 200 OK
Server: Tengine
Content-Type: text/html; charset=utf-8
Content-Length: 579546
Connection: keep-alive
Date: Thu, 05 Aug 2021 22:16:51 GMT
Vary: Accept-Encoding
X-Powered-By: Express
x-tt-logid: 02162820181098400000000000000000000ffff0acc1a0d0a44fc
ETag: "8d7da-9UN2GrglSqrBiKrteiSeSf2tylQ"
Accept-Ranges: none
Server-Timing: inner; dur=292, pp;dur=6, total;dur=288;desc="Nuxt Server Time"
Vary: Accept-Encoding
x-tt-trace-host: 011d6f0a0a05995d3b245dd3cad0158336d6085d24a5c4fca26fd5be84ed73f1ea1de42fe0d77c88616eed7e6839124294100163fa1c59f105370f1de98c0736e8f87eeb034c540029b1136d04b9408f712fad7c9c44e7fc354672f58c1f8f0f8e
x-tt-trace-tag: id=3;cdn-cache=miss
Via: cache13.cn1247[298,0]
Timing-Allow-Origin: *
EagleId: 276076a116282018109812853e

В дополнение к отправке самых простых запросов на получение, curl также может отправлять запросы на публикацию и устанавливать формат данных тела запроса.Для получения дополнительной информации см. следующую статью:Уууу. Руан Ифэн.com/blog/2019/0…