DNSTap เจ…เจคเฉ‡ BGP เจจเจพเจฒ ILV เจฌเจฒเจพเจ•เจฟเฉฐเจ— เจจเฉ‚เฉฐ เจฌเจพเจˆเจชเจพเจธ เจ•เจฐเฉ‹

DNSTap เจ…เจคเฉ‡ BGP เจจเจพเจฒ ILV เจฌเจฒเจพเจ•เจฟเฉฐเจ— เจจเฉ‚เฉฐ เจฌเจพเจˆเจชเจพเจธ เจ•เจฐเฉ‹

เจตเจฟเจธเจผเจพ เจฌเจนเฉเจค เจ•เฉเฉฑเจŸเจฟเจ† เจ—เจฟเจ† เจนเฉˆ, เจฎเฉˆเจจเฉ‚เฉฐ เจชเจคเจพ เจนเฉˆ. เจ‰เจฆเจพเจนเจฐเจจ เจฒเจˆ, เจ‡เฉฑเจ• เจฎเจนเจพเจจ เจนเฉˆ เจฒเฉ‡เจ–, เจชเจฐ เจฌเจฒเฉŒเจ•เจฒเจฟเจธเจŸ เจฆเฉ‡ เจธเจฟเจฐเจซเจผ IP เจนเจฟเฉฑเจธเฉ‡ เจจเฉ‚เฉฐ เจ‰เฉฑเจฅเฉ‡ เจฎเฉฐเจจเจฟเจ† เจœเจพเจ‚เจฆเจพ เจนเฉˆเฅค เจ…เจธเฉ€เจ‚ เจกเฉ‹เจฎเฉ‡เจจ เจตเฉ€ เจœเฉ‹เฉœเจพเจ‚เจ—เฉ‡เฅค

เจ‡เจธ เจคเฉฑเจฅ เจฆเฉ‡ เจ•เจพเจฐเจจ เจ•เจฟ เจ…เจฆเจพเจฒเจคเจพเจ‚ เจ…เจคเฉ‡ เจ†เจฐเจ•เฉ‡เจเจจ เจนเจฐ เจšเฉ€เจœเจผ เจจเฉ‚เฉฐ เจธเฉฑเจœเฉ‡ เจ…เจคเฉ‡ เจ–เฉฑเจฌเฉ‡ เจชเจพเจธเฉ‡ เจฐเฉ‹เจ•เจฆเฉ‡ เจนเจจ, เจ…เจคเฉ‡ เจชเฉเจฐเจฆเจพเจคเจพ เจฐเฉ€เจตเฉ€เจœเจผเฉ‹เจฐเฉ‹ เจฆเฉเจ†เจฐเจพ เจœเจพเจฐเฉ€ เจ•เฉ€เจคเฉ‡ เจ—เจ เจœเฉเจฐเจฎเจพเจจเจฟเจ†เจ‚ เจฆเฉ‡ เจ…เจงเฉ€เจจ เจจเจพ เจ†เจ‰เจฃ เจฆเฉ€ เจชเฉ‚เจฐเฉ€ เจ•เฉ‹เจธเจผเจฟเจธเจผ เจ•เจฐ เจฐเจนเฉ‡ เจนเจจ, เจฌเจฒเจพเจ• เจ•เจฐเจจ เจจเจพเจฒ เจœเฉเฉœเฉ‡ เจจเฉเจ•เจธเจพเจจ เจ•เจพเจซเจผเฉ€ เจตเฉฑเจกเฉ‡ เจนเจจเฅค เจ…เจคเฉ‡ "เจ•เจพเจจเฉ‚เฉฐเจจเฉ€ เจคเฉŒเจฐ 'เจคเฉ‡" เจฌเจฒเฉŒเจ• เจ•เฉ€เจคเฉ€เจ†เจ‚ เจธเจพเจˆเจŸเจพเจ‚ เจตเจฟเฉฑเจšเฉ‹เจ‚ เจฌเจนเฉเจค เจธเจพเจฐเฉ€เจ†เจ‚ เจ‰เจชเจฏเฉ‹เจ—เฉ€ เจนเจจ (เจนเฉˆเจฒเฉ‹, เจฐเจŸเจฐเฉˆเจ•เจฐ)

เจฎเฉˆเจ‚ RKN เจฆเฉ‡ เจ…เจงเจฟเจ•เจพเจฐ เจ–เฉ‡เจคเจฐ เจคเฉ‹เจ‚ เจฌเจพเจนเจฐ เจฐเจนเจฟเฉฐเจฆเจพ เจนเจพเจ‚, เจชเจฐ เจฎเฉ‡เจฐเฉ‡ เจฎเจพเจคเจพ-เจชเจฟเจคเจพ, เจฐเจฟเจธเจผเจคเฉ‡เจฆเจพเจฐ เจ…เจคเฉ‡ เจฆเฉ‹เจธเจค เจ˜เจฐ เจตเจฟเฉฑเจš เจนเฉ€ เจฐเจนเฉ‡เฅค เจ‡เจธ เจฒเจˆ เจ‡เจน เจซเฉˆเจธเจฒเจพ เจ•เฉ€เจคเจพ เจ—เจฟเจ† เจธเฉ€ เจ•เจฟ IT เจคเฉ‹เจ‚ เจฆเฉ‚เจฐ เจฒเฉ‹เจ•เจพเจ‚ เจฒเจˆ เจฌเจพเจˆเจชเจพเจธ เจฌเจฒเจพเจ•เจฟเฉฐเจ— เจฆเจพ เจ‡เฉฑเจ• เจ†เจธเจพเจจ เจคเจฐเฉ€เจ•เจพ เจนเฉˆ, เจคเจฐเจœเฉ€เจนเฉ€ เจคเฉŒเจฐ 'เจคเฉ‡ เจ‰เจจเฉเจนเจพเจ‚ เจฆเฉ€ เจญเจพเจ—เฉ€เจฆเจพเจฐเฉ€ เจคเฉ‹เจ‚ เจฌเจฟเจจเจพเจ‚เฅค

เจ‡เจธ เจจเฉ‹เจŸ เจตเจฟเฉฑเจš, เจฎเฉˆเจ‚ เจ•เจฆเจฎเจพเจ‚ เจตเจฟเฉฑเจš เจฌเฉเจจเจฟเจ†เจฆเฉ€ เจจเฉˆเจŸเจตเจฐเจ• เจšเฉ€เจœเจผเจพเจ‚ เจฆเจพ เจตเจฐเจฃเจจ เจจเจนเฉ€เจ‚ เจ•เจฐเจพเจ‚เจ—เจพ, เจชเจฐ เจฎเฉˆเจ‚ เจ‡เจธ เจธเจ•เฉ€เจฎ เจจเฉ‚เฉฐ เจ•เจฟเจตเฉ‡เจ‚ เจฒเจพเจ—เฉ‚ เจ•เฉ€เจคเจพ เจœเจพ เจธเจ•เจฆเจพ เจนเฉˆ เจฆเฉ‡ เจ†เจฎ เจธเจฟเจงเจพเจ‚เจคเจพเจ‚ เจฆเจพ เจตเจฐเจฃเจจ เจ•เจฐเจพเจ‚เจ—เจพเฅค เจ‡เจธ เจฒเจˆ เจ†เจฎ เจคเฉŒเจฐ 'เจคเฉ‡ เจ…เจคเฉ‡ เจฒเฉ€เจจเจ•เจธ เจตเจฟเฉฑเจš เจ–เจพเจธ เจคเฉŒเจฐ 'เจคเฉ‡ เจจเฉˆเฉฑเจŸเจตเจฐเจ• เจ•เจฟเจตเฉ‡เจ‚ เจ•เฉฐเจฎ เจ•เจฐเจฆเจพ เจนเฉˆ เจ‡เจธ เจฌเจพเจฐเฉ‡ เจ—เจฟเจ†เจจ เจนเฉ‹เจฃเจพ เจฒเจพเจœเจผเจฎเฉ€ เจนเฉˆเฅค

เจคเจพเจฒเฉ‡ เจฆเฉ€เจ†เจ‚ เจ•เจฟเจธเจฎเจพเจ‚

เจชเจนเจฟเจฒเจพเจ‚, เจ†เจ“ เจ†เจชเจฃเฉ€ เจฏเจพเจฆ เจจเฉ‚เฉฐ เจคเจพเจœเจผเจพ เจ•เจฐเฉ€เจ เจ•เจฟ เจ•เฉ€ เจฌเจฒเฉŒเจ• เจ•เฉ€เจคเจพ เจœเจพ เจฐเจฟเจนเจพ เจนเฉˆเฅค

RKN เจคเฉ‹เจ‚ เจ…เจจเจฒเฉ‹เจก เจ•เฉ€เจคเฉ‡ XML เจตเจฟเฉฑเจš เจ•เจˆ เจ•เจฟเจธเจฎ เจฆเฉ‡ เจคเจพเจฒเฉ‡ เจนเจจ:

  • IP
  • เจกเฉ‹เจฎเฉˆเจจ
  • URL เจจเฉ‚เฉฐ

เจธเจฐเจฒเจคเจพ เจฒเจˆ, เจ…เจธเฉ€เจ‚ เจ‰เจนเจจเจพเจ‚ เจจเฉ‚เฉฐ เจฆเฉ‹ เจคเฉฑเจ• เจ˜เจŸเจพเจตเจพเจ‚เจ—เฉ‡: เจ†เจˆเจชเฉ€ เจ…เจคเฉ‡ เจกเฉ‹เจฎเฉ‡เจจ, เจ…เจคเฉ‡ เจ…เจธเฉ€เจ‚ เจธเจฟเจฐเจซเจผ เจกเฉ‹เจฎเฉ‡เจจ เจจเฉ‚เฉฐ URL เจฆเฉเจ†เจฐเจพ เจฌเจฒเฉŒเจ• เจ•เจฐเจจ เจคเฉ‹เจ‚ เจฌเจพเจนเจฐ เจ•เฉฑเจข เจฆเฉ‡เจตเจพเจ‚เจ—เฉ‡ (เจตเจงเฉ‡เจฐเฉ‡ เจธเจชเฉฑเจธเจผเจŸ เจคเฉŒเจฐ 'เจคเฉ‡, เจ‰เจจเฉเจนเจพเจ‚ เจจเฉ‡ เจธเจพเจกเฉ‡ เจฒเจˆ เจ‡เจน เจชเจนเจฟเจฒเจพเจ‚ เจนเฉ€ เจ•เฉ€เจคเจพ เจนเฉˆ).

เจคเฉฑเจ• เจšเฉฐเจ—เฉ‡ เจฒเฉ‹เจ• เจฐเฉ‹เจธเจ•เฉ‹เจฎเจธเจตเฉ‹เจฌเฉ‹เจกเจพ เจ‡เฉฑเจ• เจธเจผเจพเจจเจฆเจพเจฐ เจ…เจนเจฟเจธเจพเจธ เจนเฉ‹เจ‡เจ† API, เจœเจฟเจธ เจฐเจพเจนเฉ€เจ‚ เจ…เจธเฉ€เจ‚ เจ‰เจน เจชเฉเจฐเจพเจชเจค เจ•เจฐ เจธเจ•เจฆเฉ‡ เจนเจพเจ‚ เจœเฉ‹ เจธเจพเจจเฉ‚เฉฐ เจšเจพเจนเฉ€เจฆเจพ เจนเฉˆ:

เจฌเจฒเฉŒเจ• เจ•เฉ€เจคเฉ€เจ†เจ‚ เจธเจพเจˆเจŸเจพเจ‚ เจคเฉฑเจ• เจชเจนเฉเฉฐเจš

เจ…เจœเจฟเจนเจพ เจ•เจฐเจจ เจฒเจˆ, เจธเจพเจจเฉ‚เฉฐ เจ•เฉเจ เจ›เฉ‹เจŸเฉ‡ เจตเจฟเจฆเฉ‡เจธเจผเฉ€ VPS เจฆเฉ€ เจฒเฉ‹เฉœ เจนเฉˆ, เจคเจฐเจœเฉ€เจนเฉ€ เจคเฉŒเจฐ 'เจคเฉ‡ เจ…เจธเฉ€เจฎเจค เจŸเฉเจฐเฉˆเจซเจฟเจ• เจฆเฉ‡ เจจเจพเจฒ - 3-5 เจฌเจ•เจธ เจฒเจˆ เจ‡เจนเจจเจพเจ‚ เจตเจฟเฉฑเจšเฉ‹เจ‚ เจฌเจนเฉเจค เจธเจพเจฐเฉ‡ เจนเจจ. เจคเฉเจนเจพเจจเฉ‚เฉฐ เจ‡เจธเจจเฉ‚เฉฐ เจจเฉ‡เฉœเจฒเฉ‡ เจตเจฟเจฆเฉ‡เจธเจผเจพเจ‚ เจตเจฟเฉฑเจš เจฒเฉˆเจฃ เจฆเฉ€ เจœเจผเจฐเฉ‚เจฐเจค เจนเฉˆ เจคเจพเจ‚ เจœเฉ‹ เจชเจฟเฉฐเจ— เจฌเจนเฉเจค เจตเฉฑเจกเจพ เจจเจพ เจนเฉ‹เจตเฉ‡, เจชเจฐ เจฆเฉเจฌเจพเจฐเจพ, เจงเจฟเจ†เจจ เจตเจฟเฉฑเจš เจฐเฉฑเจ–เฉ‹ เจ•เจฟ เจ‡เฉฐเจŸเจฐเจจเฉˆเจŸ เจ…เจคเฉ‡ เจญเฉ‚เจ—เฉ‹เจฒ เจนเจฎเฉ‡เจธเจผเจพ เจฎเฉ‡เจฒ เจจเจนเฉ€เจ‚ เจ–เจพเจ‚เจฆเฉ‡. เจ…เจคเฉ‡ เจ•เจฟเจ‰เจ‚เจ•เจฟ 5 เจฐเฉเจชเจ เจฒเจˆ เจ•เฉ‹เจˆ SLA เจจเจนเฉ€เจ‚ เจนเฉˆ, เจจเฉเจ•เจธ เจธเจนเจฟเจฃเจธเจผเฉ€เจฒเจคเจพ เจฒเจˆ เจตเฉฑเจ–-เจตเฉฑเจ– เจชเฉเจฐเจฆเจพเจคเจพเจตเจพเจ‚ เจคเฉ‹เจ‚ 2+ เจŸเฉเจ•เฉœเฉ‡ เจฒเฉˆเจฃเจพ เจฌเจฟเจนเจคเจฐ เจนเฉˆเฅค

เจ…เฉฑเจ—เฉ‡, เจธเจพเจจเฉ‚เฉฐ เจ•เจฒเจพเจ‡เฉฐเจŸ เจฐเจพเจŠเจŸเจฐ เจคเฉ‹เจ‚ VPS เจคเฉฑเจ• เจ‡เฉฑเจ• เจเจจเจ•เฉเจฐเจฟเจชเจŸเจก เจธเฉเจฐเฉฐเจ— เจธเจฅเจพเจชเจค เจ•เจฐเจจ เจฆเฉ€ เจฒเฉ‹เฉœ เจนเฉˆเฅค เจฎเฉˆเจ‚ เจตเจพเจ‡เจฐเจ—เจพเจฐเจก เจจเฉ‚เฉฐ เจธเฉˆเฉฑเจŸเจ…เฉฑเจช เจ•เจฐเจจ เจฒเจˆ เจธเจญ เจคเฉ‹เจ‚ เจคเฉ‡เจœเจผ เจ…เจคเฉ‡ เจ†เจธเจพเจจ เจตเจœเฉ‹เจ‚ เจตเจฐเจคเจฆเจพ เจนเจพเจ‚เฅค เจฎเฉ‡เจฐเฉ‡ เจ•เฉ‹เจฒ เจฒเฉ€เจจเจ•เจธ 'เจคเฉ‡ เจ…เจงเจพเจฐเจค เจ•เจฒเจพเจ‡เฉฐเจŸ เจฐเจพเจŠเจŸเจฐ เจตเฉ€ เจนเจจ (APU2 เจœเจพเจ‚ OpenWRT เจตเจฟเฉฑเจš เจ•เฉ‹เจˆ เจšเฉ€เจœเจผ)เฅค เจ•เฉเจ เจฎเจฟเจ•เจฐเฉ‹เจŸเจฟเจ• / เจธเจฟเจธเจ•เฉ‹ เจฆเฉ‡ เจฎเจพเจฎเจฒเฉ‡ เจตเจฟเฉฑเจš, เจคเฉเจธเฉ€เจ‚ เจ“เจชเจจเจตเฉ€เจชเฉ€เจเจจ เจ…เจคเฉ‡ เจœเฉ€เจ†เจฐเจˆ-เจ“เจตเจฐ-เจ†เจˆเจชเฉ€เจเจธเจˆเจธเฉ€ เจตเจฐเจ—เฉ‡ เจ‰เจนเจจเจพเจ‚ 'เจคเฉ‡ เจ‰เจชเจฒเจฌเจง เจชเฉเจฐเฉ‹เจŸเฉ‹เจ•เฉ‹เจฒ เจฆเฉ€ เจตเจฐเจคเฉ‹เจ‚ เจ•เจฐ เจธเจ•เจฆเฉ‡ เจนเฉ‹เฅค

เจฆเจฟเจฒเจšเจธเจชเฉ€ เจฆเฉ‡ เจŸเฉเจฐเฉˆเจซเจฟเจ• เจฆเฉ€ เจชเจ›เจพเจฃ เจ…เจคเฉ‡ เจฐเฉ€เจกเจพเจ‡เจฐเฉˆเจ•เจธเจผเจจ

เจคเฉเจธเฉ€เจ‚, เจฌเฉ‡เจธเจผเจ•, เจตเจฟเจฆเฉ‡เจธเจผเฉ€ เจฆเฉ‡เจธเจผเจพเจ‚ เจฆเฉเจ†เจฐเจพ เจธเจพเจฐเฉ‡ เจ‡เฉฐเจŸเจฐเจจเฉˆเจŸ เจŸเฉเจฐเฉˆเจซเจฟเจ• เจจเฉ‚เฉฐ เจฌเฉฐเจฆ เจ•เจฐ เจธเจ•เจฆเฉ‡ เจนเฉ‹. เจชเจฐ, เจธเฉฐเจญเจพเจตเจค เจคเฉŒเจฐ 'เจคเฉ‡, เจธเจฅเจพเจจเจ• เจธเจฎเฉฑเจ—เจฐเฉ€ เจจเจพเจฒ เจ•เฉฐเจฎ เจ•เจฐเจจ เจฆเฉ€ เจ—เจคเฉ€ เจ‡เจธ เจคเฉ‹เจ‚ เจฌเจนเฉเจค เจชเฉเจฐเจญเจพเจตเจฟเจค เจนเฉ‹เจตเฉ‡เจ—เฉ€. เจจเจพเจฒ เจนเฉ€, VPS 'เจคเฉ‡ เจฌเฉˆเจ‚เจกเจตเจฟเจกเจฅ เจฒเฉ‹เฉœเจพเจ‚ เจฌเจนเฉเจค เจœเจผเจฟเจ†เจฆเจพ เจนเฉ‹เจฃเจ—เฉ€เจ†เจ‚เฅค

เจ‡เจธ เจฒเจˆ, เจธเจพเจจเฉ‚เฉฐ เจ•เจฟเจธเฉ‡ เจคเจฐเฉเจนเจพเจ‚ เจฌเจฒเฉŒเจ• เจ•เฉ€เจคเฉ€เจ†เจ‚ เจธเจพเจˆเจŸเจพเจ‚ เจฒเจˆ เจŸเฉเจฐเฉˆเจซเจฟเจ• เจจเจฟเจฐเจงเจพเจฐเจค เจ•เจฐเจจ เจ…เจคเฉ‡ เจšเฉ‹เจฃเจตเฉ‡เจ‚ เจคเฉŒเจฐ 'เจคเฉ‡ เจ‡เจธ เจจเฉ‚เฉฐ เจธเฉเจฐเฉฐเจ— เจตเฉฑเจฒ เจญเฉ‡เจœเจฃ เจฆเฉ€ เจœเจผเจฐเฉ‚เจฐเจค เจนเฉ‹เจเจ—เฉ€. เจญเจพเจตเฉ‡เจ‚ เจ•เฉเจ "เจตเจพเจงเฉ‚" เจŸเฉเจฐเฉˆเจซเจฟเจ• เจ‰เฉฑเจฅเฉ‡ เจ† เจœเจพเจ‚เจฆเจพ เจนเฉˆ, เจ‡เจน เจธเฉเจฐเฉฐเจ— เจฐเจพเจนเฉ€เจ‚ เจธเจญ เจ•เฉเจ เจšเจฒเจพเจ‰เจฃ เจจเจพเจฒเฉ‹เจ‚ เจ…เจœเฉ‡ เจตเฉ€ เจฌเจนเฉเจค เจตเจงเฉ€เจ† เจนเฉˆเฅค

เจŸเฉเจฐเฉˆเจซเจฟเจ• เจฆเจพ เจชเฉเจฐเจฌเฉฐเจงเจจ เจ•เจฐเจจ เจฒเจˆ, เจ…เจธเฉ€เจ‚ BGP เจชเฉเจฐเฉ‹เจŸเฉ‹เจ•เฉ‹เจฒ เจฆเฉ€ เจตเจฐเจคเฉ‹เจ‚ เจ•เจฐเจพเจ‚เจ—เฉ‡ เจ…เจคเฉ‡ เจธเจพเจกเฉ‡ VPS เจคเฉ‹เจ‚ เจ—เจพเจนเจ•เจพเจ‚ เจคเฉฑเจ• เจฒเฉ‹เฉœเฉ€เจ‚เจฆเฉ‡ เจจเฉˆเฉฑเจŸเจตเจฐเจ•เจพเจ‚ เจฒเจˆ เจฐเฉ‚เจŸเจพเจ‚ เจฆเจพ เจเจฒเจพเจจ เจ•เจฐเจพเจ‚เจ—เฉ‡เฅค เจ†เจ‰ BIRD เจจเฉ‚เฉฐ เจธเจญ เจคเฉ‹เจ‚ เจตเฉฑเจง เจ•เจพเจฐเจœเจธเจผเฉ€เจฒ เจ…เจคเฉ‡ เจธเฉเจตเจฟเจงเจพเจœเจจเจ• BGP เจกเฉˆเจฎเจจเจพเจ‚ เจตเจฟเฉฑเจšเฉ‹เจ‚ เจ‡เฉฑเจ• เจตเจœเฉ‹เจ‚ เจฒเฉˆเจ‚เจฆเฉ‡ เจนเจพเจ‚เฅค

IP

IP เจฆเฉเจ†เจฐเจพ เจฌเจฒเฉŒเจ• เจ•เจฐเจจ เจฆเฉ‡ เจจเจพเจฒ, เจธเจญ เจ•เฉเจ เจธเจชเฉฑเจธเจผเจŸ เจนเฉˆ: เจ…เจธเฉ€เจ‚ เจธเจฟเจฐเจซเจผ VPS เจฆเฉ‡ เจจเจพเจฒ เจธเจพเจฐเฉ‡ เจฌเจฒเฉŒเจ• เจ•เฉ€เจคเฉ‡ IP เจฆเฉ€ เจ˜เฉ‹เจธเจผเจฃเจพ เจ•เจฐเจฆเฉ‡ เจนเจพเจ‚เฅค เจธเจฎเฉฑเจธเจฟเจ† เจ‡เจน เจนเฉˆ เจ•เจฟ เจธเฉ‚เจšเฉ€ เจตเจฟเฉฑเจš เจฒเจ—เจญเจ— 600 เจนเจœเจผเจพเจฐ เจธเจฌเจจเฉˆเฉฑเจŸ เจนเจจ เจœเฉ‹ API เจตเจพเจชเจธ เจ•เจฐเจฆเจพ เจนเฉˆ, เจ…เจคเฉ‡ เจ‰เจนเจจเจพเจ‚ เจตเจฟเฉฑเจšเฉ‹เจ‚ เจœเจผเจฟเจ†เจฆเจพเจคเจฐ /32 เจนเฉ‹เจธเจŸ เจนเจจเฅค เจฐเฉ‚เจŸเจพเจ‚ เจฆเฉ€ เจ‡เจน เจ—เจฟเจฃเจคเฉ€ เจ•เจฎเจœเจผเฉ‹เจฐ เจ•เจฒเจพเจ‡เฉฐเจŸ เจฐเจพเจŠเจŸเจฐเจพเจ‚ เจจเฉ‚เฉฐ เจ‰เจฒเจเจพ เจธเจ•เจฆเฉ€ เจนเฉˆเฅค

เจ‡เจธเจฒเจˆ, เจธเฉ‚เจšเฉ€ เจฆเฉ€ เจชเฉเจฐเจ•เจฟเจฐเจฟเจ† เจ•เจฐเจฆเฉ‡ เจธเจฎเฉ‡เจ‚, เจ‡เจน เจซเฉˆเจธเจฒเจพ เจ•เฉ€เจคเจพ เจ—เจฟเจ† เจธเฉ€ เจ•เจฟ เจœเฉ‡เจ•เจฐ เจ‡เจธ เจตเจฟเฉฑเจš 24 เจœเจพเจ‚ เจตเฉฑเจง เจฎเฉ‡เจœเจผเจฌเจพเจจ เจนเจจ เจคเจพเจ‚ /2 เจจเฉˆเฉฑเจŸเจตเจฐเจ• เจคเฉฑเจ• เจฆเจพ เจธเจพเจฐ เจฆเจฟเฉฑเจคเจพ เจœเจพเจตเฉ‡เฅค เจ‡เจธ เจคเจฐเฉเจนเจพเจ‚, เจฐเฉ‚เจŸเจพเจ‚ เจฆเฉ€ เจ—เจฟเจฃเจคเฉ€ ~ 100 เจนเจœเจผเจพเจฐ เจคเฉฑเจ• เจ˜เจŸเจพ เจฆเจฟเฉฑเจคเฉ€ เจ—เจˆ เจธเฉ€เฅค เจ‡เจธเจฆเฉ‡ เจฒเจˆ เจธเจ•เฉเจฐเจฟเจชเจŸ เจฆเฉ€ เจชเจพเจฒเจฃเจพ เจ•เฉ€เจคเฉ€ เจœเจพเจตเฉ‡เจ—เฉ€เฅค

เจกเฉ‹เจฎเฉ‡เจจ

เจ‡เจน เจตเจงเฉ‡เจฐเฉ‡ เจ—เฉเฉฐเจเจฒเจฆเจพเจฐ เจนเฉˆ เจ…เจคเฉ‡ เจ•เจˆ เจคเจฐเฉ€เจ•เฉ‡ เจนเจจเฅค เจ‰เจฆเจพเจนเจฐเจจ เจฒเจˆ, เจคเฉเจธเฉ€เจ‚ เจนเจฐเฉ‡เจ• เจ•เจฒเจพเจ‡เฉฐเจŸ เจฐเจพเจŠเจŸเจฐ 'เจคเฉ‡ เจ‡เฉฑเจ• เจชเจพเจฐเจฆเจฐเจธเจผเฉ€ เจธเจ•เฉเจ‡เจก เจธเจฅเจพเจชเจค เจ•เจฐ เจธเจ•เจฆเฉ‡ เจนเฉ‹ เจ…เจคเฉ‡ เจ‰เฉฑเจฅเฉ‡ HTTP เจ‡เฉฐเจŸเจฐเจธเฉˆเจชเจธเจผเจจ เจ•เจฐ เจธเจ•เจฆเฉ‡ เจนเฉ‹ เจ…เจคเฉ‡ เจชเจนเจฟเจฒเฉ‡ เจ•เฉ‡เจธ เจตเจฟเฉฑเจš เจฌเฉ‡เจจเจคเฉ€ เจ•เฉ€เจคเฉ‡ URL เจ…เจคเฉ‡ เจฆเฉ‚เจœเฉ‡ เจตเจฟเฉฑเจš SNI เจคเฉ‹เจ‚ เจกเฉ‹เจฎเฉ‡เจจ เจชเฉเจฐเจพเจชเจค เจ•เจฐเจจ เจฒเจˆ TLS เจนเฉˆเจ‚เจกเจธเจผเฉ‡เจ• เจตเจฟเฉฑเจš เจเจพเจค เจฎเจพเจฐ เจธเจ•เจฆเฉ‡ เจนเฉ‹เฅค

เจชเจฐ เจนเจฐ เจคเจฐเฉเจนเจพเจ‚ เจฆเฉ‡ เจจเจตเฉ‡เจ‚ TLS1.3 + eSNI เจฆเฉ‡ เจ•เจพเจฐเจจ, HTTPS เจตเจฟเจธเจผเจฒเฉ‡เจธเจผเจฃ เจนเจฐ เจฆเจฟเจจ เจ˜เฉฑเจŸ เจ…เจคเฉ‡ เจ˜เฉฑเจŸ เจ…เจธเจฒเฉ€ เจนเฉเฉฐเจฆเจพ เจœเจพ เจฐเจฟเจนเจพ เจนเฉˆเฅค เจนเจพเจ‚, เจ…เจคเฉ‡ เจ•เจฒเจพเจ‡เฉฐเจŸ เจธเจพเจˆเจก 'เจคเฉ‡ เจฌเฉเจจเจฟเจ†เจฆเฉ€ เจขเจพเจ‚เจšเจพ เจตเจงเฉ‡เจฐเฉ‡ เจ—เฉเฉฐเจเจฒเจฆเจพเจฐ เจฌเจฃ เจฐเจฟเจนเจพ เจนเฉˆ - เจคเฉเจนเจพเจจเฉ‚เฉฐ เจ˜เฉฑเจŸเฉ‹ เจ˜เฉฑเจŸ เจ“เจชเจจเจกเจฌเจฒเจฏเฉ‚เจ†เจฐเจŸเฉ€ เจฆเฉ€ เจตเจฐเจคเฉ‹เจ‚ เจ•เจฐเจจเฉ€ เจชเจตเฉ‡เจ—เฉ€.

เจ‡เจธ เจฒเจˆ, เจฎเฉˆเจ‚ DNS เจฌเฉ‡เจจเจคเฉ€เจ†เจ‚ เจฆเฉ‡ เจœเจตเจพเจฌเจพเจ‚ เจจเฉ‚เฉฐ เจฐเฉ‹เจ•เจฃ เจฆเจพ เจฐเจพเจน เจ…เจชเจฃเจพเจ‰เจฃ เจฆเจพ เจซเฉˆเจธเจฒเจพ เจ•เฉ€เจคเจพ. เจ‡เฉฑเจฅเฉ‡, เจตเฉ€, เจ•เฉ‹เจˆ เจตเฉ€ DNS-เจ“เจตเจฐ-TLS/HTTPS เจคเฉเจนเจพเจกเฉ‡ เจธเจฟเจฐ 'เจคเฉ‡ เจ˜เฉเฉฐเจฎเจฃเจพ เจธเจผเฉเจฐเฉ‚ เจนเฉ‹ เจœเจพเจ‚เจฆเจพ เจนเฉˆ, เจชเจฐ เจ…เจธเฉ€เจ‚ (เจนเฉเจฃ เจฒเจˆ) เจ•เจฒเจพเจ‡เฉฐเจŸ 'เจคเฉ‡ เจ‡เจธ เจนเจฟเฉฑเจธเฉ‡ เจจเฉ‚เฉฐ เจจเจฟเจฏเฉฐเจคเจฐเจฟเจค เจ•เจฐ เจธเจ•เจฆเฉ‡ เจนเจพเจ‚ - เจœเจพเจ‚ เจคเจพเจ‚ เจ‡เจธเจจเฉ‚เฉฐ เจ…เจฏเฉ‹เจ— เจ•เจฐ เจธเจ•เจฆเฉ‡ เจนเจพเจ‚ เจœเจพเจ‚ DoT / DoH เจฒเจˆ เจ†เจชเจฃเฉ‡ เจ–เฉเจฆ เจฆเฉ‡ เจธเจฐเจตเจฐ เจฆเฉ€ เจตเจฐเจคเฉ‹เจ‚ เจ•เจฐ เจธเจ•เจฆเฉ‡ เจนเจพเจ‚เฅค

DNS เจจเฉ‚เฉฐ เจ•เจฟเจตเฉ‡เจ‚ เจฐเฉ‹เจ•เจฟเจ† เจœเจพเจตเฉ‡?

เจ‡เฉฑเจฅเฉ‡, เจตเฉ€, เจ•เจˆ เจชเจนเฉเฉฐเจš เจนเฉ‹ เจธเจ•เจฆเฉ‡ เจนเจจ.

  • PCAP เจœเจพเจ‚ NFLOG เจฆเฉเจ†เจฐเจพ DNS เจŸเฉเจฐเฉˆเจซเจฟเจ• เจฆเฉ€ เจฐเฉเจ•เจพเจตเจŸ
    เจ‡เฉฐเจŸเจฐเจธเฉˆเจชเจธเจผเจจ เจฆเฉ‡ เจ‡เจน เจฆเฉ‹เจตเฉ‡เจ‚ เจคเจฐเฉ€เจ•เฉ‡ เจ‰เจชเจฏเฉ‹เจ—เจคเจพ เจตเจฟเฉฑเจš เจฒเจพเจ—เฉ‚ เจ•เฉ€เจคเฉ‡ เจ—เจ เจนเจจ sidmat. เจชเจฐ เจ‡เจน เจฒเฉฐเจฌเฉ‡ เจธเจฎเฉ‡เจ‚ เจคเฉ‹เจ‚ เจธเจฎเจฐเจฅเจฟเจค เจจเจนเฉ€เจ‚ เจนเฉˆ เจ…เจคเฉ‡ เจ•เจพเจฐเจœเจ•เฉเจธเจผเจฒเจคเจพ เจฌเจนเฉเจค เจชเฉเจฐเจพเจฃเฉ€ เจนเฉˆ, เจ‡เจธ เจฒเจˆ เจคเฉเจนเจพเจจเฉ‚เฉฐ เจ…เจœเฉ‡ เจตเฉ€ เจ‡เจธเจฆเฉ‡ เจฒเจˆ เจ‡เฉฑเจ• เจนเจพเจฐเจจ เจฒเจฟเจ–เจฃ เจฆเฉ€ เจœเจผเจฐเฉ‚เจฐเจค เจนเฉˆ.
  • DNS เจธเจฐเจตเจฐ เจฒเฉŒเจ—เจธ เจฆเจพ เจตเจฟเจธเจผเจฒเฉ‡เจธเจผเจฃ
    เจฌเจฆเจ•เจฟเจธเจฎเจคเฉ€ เจจเจพเจฒ, เจฎเฉˆเจจเฉ‚เฉฐ เจœเจพเจฃเฉ‡ เจœเจพเจ‚เจฆเฉ‡ เจ†เจตเจฐเจคเฉ€ เจœเจตเจพเจฌเจพเจ‚ เจจเฉ‚เฉฐ เจฒเฉŒเจ— เจ•เจฐเจจ เจฆเฉ‡ เจฏเฉ‹เจ— เจจเจนเฉ€เจ‚ เจนเจจ, เจชเจฐ เจธเจฟเจฐเจซเจผ เจฌเฉ‡เจจเจคเฉ€เจ†เจ‚ เจนเจจเฅค เจธเจฟเจงเจพเจ‚เจค เจตเจฟเฉฑเจš, เจ‡เจน เจคเจฐเจ•เจชเฉ‚เจฐเจจ เจนเฉˆ, เจ•เจฟเจ‰เจ‚เจ•เจฟ, เจฌเฉ‡เจจเจคเฉ€เจ†เจ‚ เจฆเฉ‡ เจ‰เจฒเจŸ, เจœเจตเจพเจฌเจพเจ‚ เจฆเฉ€ เจ‡เฉฑเจ• เจ—เฉเฉฐเจเจฒเจฆเจพเจฐ เจฌเจฃเจคเจฐ เจนเฉเฉฐเจฆเฉ€ เจนเฉˆ เจ…เจคเฉ‡ เจ‰เจนเจจเจพเจ‚ เจจเฉ‚เฉฐ เจŸเฉˆเจ•เจธเจŸ เจฐเฉ‚เจช เจตเจฟเฉฑเจš เจฒเจฟเจ–เจฃเจพ เจฎเฉเจธเจผเจ•เจฒ เจนเฉเฉฐเจฆเจพ เจนเฉˆเฅค
  • DNSTap
    เจ–เฉเจธเจผเจ•เจฟเจธเจฎเจคเฉ€ เจจเจพเจฒ, เจ‰เจนเจจเจพเจ‚ เจตเจฟเฉฑเจšเฉ‹เจ‚ เจฌเจนเฉเจค เจธเจพเจฐเฉ‡ เจชเจนเจฟเจฒเจพเจ‚ เจนเฉ€ เจ‡เจธ เจ‰เจฆเฉ‡เจธเจผ เจฒเจˆ DNSTap เจฆเจพ เจธเจฎเจฐเจฅเจจ เจ•เจฐเจฆเฉ‡ เจนเจจเฅค

DNSTap เจ•เฉ€ เจนเฉˆ?

DNSTap เจ…เจคเฉ‡ BGP เจจเจพเจฒ ILV เจฌเจฒเจพเจ•เจฟเฉฐเจ— เจจเฉ‚เฉฐ เจฌเจพเจˆเจชเจพเจธ เจ•เจฐเฉ‹

เจ‡เจน เจ‡เฉฑเจ• เจ•เจฒเจพเจ‡เฉฐเจŸ-เจธเจฐเจตเจฐ เจชเฉเจฐเฉ‹เจŸเฉ‹เจ•เฉ‹เจฒ เจนเฉˆ เจœเฉ‹ เจชเฉเจฐเฉ‹เจŸเฉ‹เจ•เฉ‹เจฒ เจฌเจซเจฐเจพเจ‚ เจ…เจคเฉ‡ เจซเจฐเฉ‡เจฎ เจธเจŸเฉเจฐเฉ€เจฎเจพเจ‚ 'เจคเฉ‡ เจ†เจงเจพเจฐเจฟเจค เจนเฉˆ เจœเฉ‹ เจ•เจฟ เจ‡เฉฑเจ• DNS เจธเจฐเจตเจฐ เจคเฉ‹เจ‚ เจขเจพเจ‚เจšเจพเจ—เจค DNS เจธเจตเจพเจฒเจพเจ‚ เจ…เจคเฉ‡ เจœเจตเจพเจฌเจพเจ‚ เจฆเฉ‡ เจ‡เฉฑเจ• เจ•เฉเจฒเฉˆเจ•เจŸเจฐ เจจเฉ‚เฉฐ เจŸเฉเจฐเจพเจ‚เจธเจซเจฐ เจ•เจฐเจจ เจฒเจˆ เจนเฉˆเฅค เจœเจผเจฐเฉ‚เจฐเฉ€ เจคเฉŒเจฐ 'เจคเฉ‡, DNS เจธเจฐเจตเจฐ เจชเฉเฉฑเจ›เจ—เจฟเฉฑเจ› เจ…เจคเฉ‡ เจœเจตเจพเจฌ เจฎเฉˆเจŸเจพเจกเฉ‡เจŸเจพ (เจธเฉเจจเฉ‡เจนเฉ‡ เจฆเฉ€ เจ•เจฟเจธเจฎ, เจ•เจฒเจพเจ‡เฉฐเจŸ/เจธเจฐเจตเจฐ IP, เจ†เจฆเจฟ) เจ…เจคเฉ‡ เจชเฉ‚เจฐเฉ‡ DNS เจธเฉเจจเฉ‡เจนเจฟเจ†เจ‚ เจจเฉ‚เฉฐ (เจฌเจพเจˆเจจเจฐเฉ€) เจฐเฉ‚เจช เจตเจฟเฉฑเจš เจชเฉเจฐเจธเจพเจฐเจฟเจค เจ•เจฐเจฆเจพ เจนเฉˆ เจœเจฟเจธ เจตเจฟเฉฑเจš เจ‡เจน เจ‰เจนเจจเจพเจ‚ เจจเจพเจฒ เจจเฉˆเฉฑเจŸเจตเจฐเจ• เจ‰เฉฑเจคเฉ‡ เจ•เฉฐเจฎ เจ•เจฐเจฆเจพ เจนเฉˆเฅค

เจ‡เจน เจธเจฎเจเจฃเจพ เจฎเจนเฉฑเจคเจตเจชเฉ‚เจฐเจจ เจนเฉˆ เจ•เจฟ DNSTap เจชเฉˆเจฐเจพเจกเจพเจˆเจฎ เจตเจฟเฉฑเจš, DNS เจธเจฐเจตเจฐ เจ‡เฉฑเจ• เจ•เจฒเจพเจ‡เฉฐเจŸ เจตเจœเฉ‹เจ‚ เจ•เฉฐเจฎ เจ•เจฐเจฆเจพ เจนเฉˆ เจ…เจคเฉ‡ เจ•เฉเจฒเฉˆเจ•เจŸเจฐ เจ‡เฉฑเจ• เจธเจฐเจตเจฐ เจตเจœเฉ‹เจ‚ เจ•เฉฐเจฎ เจ•เจฐเจฆเจพ เจนเฉˆเฅค เจญเจพเจต, DNS เจธเจฐเจตเจฐ เจ•เฉเจฒเฉˆเจ•เจŸเจฐ เจจเจพเจฒ เจœเฉเฉœเจฆเจพ เจนเฉˆ, เจจเจพ เจ•เจฟ เจ‰เจฒเจŸเฅค

เจ…เฉฑเจœ DNSTap เจธเจพเจฐเฉ‡ เจชเฉเจฐเจธเจฟเฉฑเจง DNS เจธเจฐเจตเจฐเจพเจ‚ เจตเจฟเฉฑเจš เจธเจฎเจฐเจฅเจฟเจค เจนเฉˆเฅค เจชเจฐ, เจ‰เจฆเจพเจนเจฐเจจ เจฒเจˆ, เจฌเจนเฉเจค เจธเจพเจฐเฉ€เจ†เจ‚ เจกเจฟเจธเจŸเจฐเฉ€เจฌเจฟเจŠเจธเจผเจจเจพเจ‚ เจตเจฟเฉฑเจš BIND (เจœเจฟเจตเฉ‡เจ‚ Ubuntu LTS) เจ…เจ•เจธเจฐ เจ‡เจธเจฆเฉ‡ เจธเจฎเจฐเจฅเจจ เจคเฉ‹เจ‚ เจฌเจฟเจจเจพเจ‚ เจ•เจฟเจธเฉ‡ เจ•เจพเจฐเจจ เจ•เจฐเจ•เฉ‡ เจฌเจฃเจพเจ‡เจ† เจœเจพเจ‚เจฆเจพ เจนเฉˆเฅค เจ‡เจธ เจฒเจˆ เจ†เจ“ เจฆเฉเจฌเจพเจฐเจพ เจ…เจธเฉˆเจ‚เจฌเจฒเฉ€ เจจเจพเจฒ เจชเจฐเฉ‡เจธเจผเจพเจจ เจจเจพ เจนเฉ‹เจˆเจ, เจชเจฐ เจ‡เฉฑเจ• เจนเจฒเจ•เจพ เจ…เจคเฉ‡ เจคเฉ‡เจœเจผ เจฐเจฟเจ•เจฐเจธเจฐ เจฒเจ“ - เจ…เจจเจฌเจพเจ‰เจ‚เจกเฅค

DNSTap เจจเฉ‚เฉฐ เจ•เจฟเจตเฉ‡เจ‚ เจซเฉœเจจเจพ เจนเฉˆ?

เจนเจจ เจ•เฉเฉฑเจ เจฆเฉ€ เจฐเจ•เจฎ DNSTap เจ‡เจตเฉˆเจ‚เจŸเจธ เจฆเฉ€ เจ‡เฉฑเจ• เจธเจŸเฉเจฐเฉ€เจฎ เจจเจพเจฒ เจ•เฉฐเจฎ เจ•เจฐเจจ เจฒเจˆ CLI เจ‰เจชเจฏเฉ‹เจ—เจคเจพเจตเจพเจ‚, เจชเจฐ เจ‰เจน เจธเจพเจกเฉ€ เจธเจฎเฉฑเจธเจฟเจ† เจจเฉ‚เฉฐ เจนเฉฑเจฒ เจ•เจฐเจจ เจฒเจˆ เจขเฉเจ•เจตเฉ‡เจ‚ เจจเจนเฉ€เจ‚ เจนเจจเฅค เจ‡เจธ เจฒเจˆ, เจฎเฉˆเจ‚ เจ†เจชเจฃเฉ€ เจ–เฉเจฆ เจฆเฉ€ เจธเจพเจˆเจ•เจฒ เจฆเฉ€ เจ•เจพเจข เจ•เฉฑเจขเจฃ เจฆเจพ เจซเฉˆเจธเจฒเจพ เจ•เฉ€เจคเจพ เจนเฉˆ เจœเฉ‹ เจ‰เจน เจธเจญ เจ•เฉเจ เจ•เจฐเฉ‡เจ—เจพ เจœเฉ‹ เจœเจผเจฐเฉ‚เจฐเฉ€ เจนเฉˆ: dnstap-bgp

เจ•เฉฐเจฎ เจฆเจพ เจเจฒเจ—เฉ‹เจฐเจฟเจฆเจฎ:

  • เจœเจฆเฉ‹เจ‚ เจฒเจพเจ‚เจš เจ•เฉ€เจคเจพ เจœเจพเจ‚เจฆเจพ เจนเฉˆ, เจ‡เจน เจ‡เฉฑเจ• เจŸเฉˆเจ•เจธเจŸ เจซเจพเจˆเจฒ เจคเฉ‹เจ‚ เจกเฉ‹เจฎเฉ‡เจจเจพเจ‚ เจฆเฉ€ เจ‡เฉฑเจ• เจธเฉ‚เจšเฉ€ เจฒเฉ‹เจก เจ•เจฐเจฆเจพ เจนเฉˆ, เจ‰เจนเจจเจพเจ‚ เจจเฉ‚เฉฐ เจ‰เจฒเจŸเจพเจ‰เจ‚เจฆเจพ เจนเฉˆ (habr.com -> com.habr), เจŸเฉเฉฑเจŸเฉ€เจ†เจ‚ เจฒเจพเจˆเจจเจพเจ‚, เจกเฉเจชเจฒเฉ€เจ•เฉ‡เจŸ เจ…เจคเฉ‡ เจธเจฌเจกเฉ‹เจฎเฉ‡เจจเจพเจ‚ เจจเฉ‚เฉฐ เจธเจผเจพเจฎเจฒ เจจเจนเฉ€เจ‚ เจ•เจฐเจฆเจพ (เจœเจฟเจตเฉ‡เจ‚ เจ•เจฟ เจœเฉ‡เจ•เจฐ เจธเฉ‚เจšเฉ€ เจตเจฟเฉฑเจš habr.com เจ…เจคเฉ‡ www.habr.com เจธเจผเจพเจฎเจฒ เจนเจจ, เจ‡เจธ เจจเฉ‚เฉฐ เจธเจฟเจฐเจซ เจชเจนเจฟเจฒเจพ เจฒเฉ‹เจก เจ•เฉ€เจคเจพ เจœเจพเจตเฉ‡เจ—เจพ) เจ…เจคเฉ‡ เจ‡เจธ เจธเฉ‚เจšเฉ€ เจฆเฉเจ†เจฐเจพ เจคเฉ‡เจœเจผเฉ€ เจจเจพเจฒ เจ–เฉ‹เจœ เจ•เจฐเจจ เจฒเจˆ เจ‡เฉฑเจ• เจชเฉเจฐเฉ€เจซเจฟเจ•เจธ เจŸเฉเจฐเฉ€ เจฌเจฃเจพเจ‰เจ‚เจฆเจพ เจนเฉˆ
  • เจ‡เฉฑเจ• DNSTap เจธเจฐเจตเจฐ เจตเจœเฉ‹เจ‚ เจ•เฉฐเจฎ เจ•เจฐเจจเจพ, เจ‡เจน เจ‡เฉฑเจ• DNS เจธเจฐเจตเจฐ เจคเฉ‹เจ‚ เจ‡เฉฑเจ• เจ•เฉเจจเฉˆเจ•เจธเจผเจจ เจฆเฉ€ เจ‰เจกเฉ€เจ• เจ•เจฐเจฆเจพ เจนเฉˆเฅค เจธเจฟเจงเจพเจ‚เจค เจตเจฟเฉฑเจš, เจ‡เจน UNIX เจ…เจคเฉ‡ TCP เจธเจพเจ•เจŸ เจฆเฉ‹เจตเจพเจ‚ เจฆเจพ เจธเจฎเจฐเจฅเจจ เจ•เจฐเจฆเจพ เจนเฉˆ, เจชเจฐ DNS เจธเจฐเจตเจฐ เจœเจฟเจจเฉเจนเจพเจ‚ เจจเฉ‚เฉฐ เจฎเฉˆเจ‚ เจœเจพเจฃเจฆเจพ เจนเจพเจ‚ เจธเจฟเจฐเจซ UNIX เจธเจพเจ•เจŸเจพเจ‚ เจฆเฉ€ เจตเจฐเจคเฉ‹เจ‚ เจ•เจฐ เจธเจ•เจฆเจพ เจนเฉˆ
  • เจ†เจ‰เจฃ เจตเจพเจฒเฉ‡ DNSTap เจชเฉˆเจ•เฉ‡เจŸเจพเจ‚ เจจเฉ‚เฉฐ เจชเจนเจฟเจฒเจพเจ‚ เจ‡เฉฑเจ• เจชเฉเจฐเฉ‹เจŸเฉ‹เจฌเจซ เจขเจพเจ‚เจšเฉ‡ เจตเจฟเฉฑเจš เจกเฉ€เจธเฉ€เจฐเฉ€เจ…เจฒเจพเจˆเจœเจผ เจ•เฉ€เจคเจพ เจœเจพเจ‚เจฆเจพ เจนเฉˆ, เจ…เจคเฉ‡ เจซเจฟเจฐ เจฌเจพเจˆเจจเจฐเฉ€ DNS เจธเฉเจจเฉ‡เจนเจพ, เจœเฉ‹ เจ•เจฟ เจชเฉเจฐเฉ‹เจŸเฉ‹เจฌเจซ เจซเฉ€เจฒเจกเจพเจ‚ เจตเจฟเฉฑเจšเฉ‹เจ‚ เจ‡เฉฑเจ• เจตเจฟเฉฑเจš เจธเจฅเจฟเจค เจนเฉเฉฐเจฆเจพ เจนเฉˆ, เจจเฉ‚เฉฐ DNS RR เจฐเจฟเจ•เจพเจฐเจกเจพเจ‚ เจฆเฉ‡ เจชเฉฑเจงเจฐ เจคเฉฑเจ• เจชเจพเจฐเจธ เจ•เฉ€เจคเจพ เจœเจพเจ‚เจฆเจพ เจนเฉˆเฅค
  • เจ‡เจน เจœเจพเจ‚เจš เจ•เฉ€เจคเฉ€ เจœเจพเจ‚เจฆเฉ€ เจนเฉˆ เจ•เจฟ เจ•เฉ€ เจฌเฉ‡เจจเจคเฉ€ เจ•เฉ€เจคเฉ€ เจนเฉ‹เจธเจŸ (เจœเจพเจ‚ เจ‡เจธเจฆเจพ เจฎเฉ‚เจฒ เจกเฉ‹เจฎเฉ‡เจจ) เจฒเฉ‹เจก เจ•เฉ€เจคเฉ€ เจธเฉ‚เจšเฉ€ เจตเจฟเฉฑเจš เจนเฉˆ, เจœเฉ‡เจ•เจฐ เจจเจนเฉ€เจ‚, เจคเจพเจ‚ เจœเจตเจพเจฌ เจจเฉ‚เฉฐ เจ…เจฃเจกเจฟเฉฑเจ  เจ•เฉ€เจคเจพ เจœเจพเจ‚เจฆเจพ เจนเฉˆ
  • เจœเจตเจพเจฌ เจตเจฟเฉฑเจšเฉ‹เจ‚ เจธเจฟเจฐเจซเจผ A/AAAA/CNAME RR เจšเฉเจฃเฉ‡ เจœเจพเจ‚เจฆเฉ‡ เจนเจจ เจ…เจคเฉ‡ เจธเฉฐเจฌเฉฐเจงเจฟเจค IPv4/IPv6 เจชเจคเฉ‡ เจ‰เจนเจจเจพเจ‚ เจคเฉ‹เจ‚ เจ•เฉฑเจขเฉ‡ เจœเจพเจ‚เจฆเฉ‡ เจนเจจเฅค
  • IP เจเจกเจฐเฉˆเฉฑเจธ เจ•เฉŒเจ‚เจซเจฟเจ—เจฐ เจ•เจฐเจจ เจฏเฉ‹เจ— TTL เจจเจพเจฒ เจ•เฉˆเจธเจผ เจ•เฉ€เจคเฉ‡ เจœเจพเจ‚เจฆเฉ‡ เจนเจจ เจ…เจคเฉ‡ เจธเจพเจฐเฉ‡ เจ•เฉŒเจ‚เจซเจฟเจ—เจฐ เจ•เฉ€เจคเฉ‡ BGP เจธเจพเจฅเฉ€เจ†เจ‚ เจจเฉ‚เฉฐ เจ‡เจธเจผเจคเจฟเจนเจพเจฐ เจฆเจฟเฉฑเจคเจพ เจœเจพเจ‚เจฆเจพ เจนเฉˆ
  • เจœเจฆเฉ‹เจ‚ เจชเจนเจฟเจฒเจพเจ‚ เจนเฉ€ เจ•เฉˆเจธเจผ เจ•เฉ€เจคเฉ‡ เจ†เจˆเจชเฉ€ เจตเฉฑเจฒ เจ‡เจธเจผเจพเจฐเจพ เจ•เจฐเจจ เจตเจพเจฒเจพ เจœเจตเจพเจฌ เจชเฉเจฐเจพเจชเจค เจนเฉเฉฐเจฆเจพ เจนเฉˆ, เจคเจพเจ‚ เจ‡เจธเจฆเจพ TTL เจ…เฉฑเจชเจกเฉ‡เจŸ เจนเฉเฉฐเจฆเจพ เจนเฉˆ
  • TTL เจฆเฉ€ เจฎเจฟเจ†เจฆ เจชเฉเฉฑเจ—เจฃ เจคเฉ‹เจ‚ เจฌเจพเจ…เจฆ, เจเจ‚เจŸเจฐเฉ€ เจจเฉ‚เฉฐ เจ•เฉˆเจธเจผ เจ…เจคเฉ‡ BGP เจ˜เฉ‹เจธเจผเจฃเจพเจตเจพเจ‚ เจคเฉ‹เจ‚ เจนเจŸเจพ เจฆเจฟเฉฑเจคเจพ เจœเจพเจ‚เจฆเจพ เจนเฉˆ

เจตเจพเจงเฉ‚ เจ•เจพเจฐเจœเจ•เฉเจธเจผเจฒเจคเจพ:

  • SIGHUP เจฆเฉเจ†เจฐเจพ เจกเฉ‹เจฎเฉ‡เจจเจพเจ‚ เจฆเฉ€ เจธเฉ‚เจšเฉ€ เจจเฉ‚เฉฐ เจฎเฉเฉœ เจชเฉœเฉเจนเจจเจพ
  • เจ•เฉˆเจธเจผ เจจเฉ‚เฉฐ เจนเฉ‹เจฐ เจฎเฉŒเจ•เจฟเจ†เจ‚ เจจเจพเจฒ เจธเจฎเจ•เจพเจฒเฉ€ เจฐเฉฑเจ–เจฃเจพ dnstap-bgp HTTP/JSON เจฐเจพเจนเฉ€เจ‚
  • เจฐเฉ€เจธเจŸเจพเจฐเจŸ เจ•เจฐเจจ เจคเฉ‹เจ‚ เจฌเจพเจ…เจฆ เจ‡เจธเจฆเฉ€ เจธเจฎเฉฑเจ—เจฐเฉ€ เจจเฉ‚เฉฐ เจฐเฉ€เจธเจŸเฉ‹เจฐ เจ•เจฐเจจ เจฒเจˆ เจกเจฟเจธเจ• (เจฌเฉ‹เจฒเจŸเจกเฉ€เจฌเฉ€ เจกเฉ‡เจŸเจพเจฌเฉ‡เจธ เจตเจฟเฉฑเจš) เจ‰เฉฑเจคเฉ‡ เจ•เฉˆเจธเจผ เจฆเฉ€ เจกเฉเจชเจฒเฉ€เจ•เฉ‡เจŸ เจ•เจฐเฉ‹
  • เจ‡เฉฑเจ• เจตเฉฑเจ–เจฐเฉ‡ เจจเฉˆเฉฑเจŸเจตเจฐเจ• เจจเฉ‡เจฎเจธเจชเฉ‡เจธ เจตเจฟเฉฑเจš เจฌเจฆเจฒเจฃ เจฒเจˆ เจธเจฎเจฐเจฅเจจ (เจ‡เจธเจฆเฉ€ เจฒเฉ‹เฉœ เจ•เจฟเจ‰เจ‚ เจนเฉˆ เจนเฉ‡เจ เจพเจ‚ เจตเจฐเจฃเจจ เจ•เฉ€เจคเจพ เจœเจพเจตเฉ‡เจ—เจพ)
  • IPv6 เจธเจนเจฟเจฏเฉ‹เจ—

เจ•เจฎเฉ€เจ†เจ‚:

  • IDN เจกเฉ‹เจฎเฉ‡เจจ เจ…เจœเฉ‡ เจธเจฎเจฐเจฅเจฟเจค เจจเจนเฉ€เจ‚ เจนเจจ
  • เจ•เฉเจ BGP เจธเฉˆเจŸเจฟเฉฐเจ—เจพเจ‚

เจฎเฉˆเจ‚ เจ‡เจ•เฉฑเจ เจพ เจ•เฉ€เจคเจพ RPM เจ…เจคเฉ‡ DEB เจ†เจธเจพเจจ เจ‡เฉฐเจธเจŸเจพเจฒเฉ‡เจธเจผเจจ เจฒเจˆ เจชเฉˆเจ•เฉ‡เจœ. เจธเจฟเจธเจŸเจฎเจก เจฆเฉ‡ เจจเจพเจฒ เจธเจญ เจฎเฉเจ•เจพเจฌเจฒเจคเจจ เจนเจพเจฒเฉ€เจ† OS เจคเฉ‡ เจ•เฉฐเจฎ เจ•เจฐเจจเจพ เจšเจพเจนเฉ€เจฆเจพ เจนเฉˆเฅค เจ‰เจนเจจเจพเจ‚ เจ•เฉ‹เจฒ เจ•เฉ‹เจˆ เจจเจฟเจฐเจญเจฐเจคเจพ เจจเจนเฉ€เจ‚ เจนเฉˆเฅค

เจธเจ•เฉ€เจฎ

เจ‡เจธ เจฒเจˆ, เจ†เจ“ เจธเจพเจฐเฉ‡ เจญเจพเจ—เจพเจ‚ เจจเฉ‚เฉฐ เจ‡เจ•เฉฑเจ เจพ เจ•เจฐเจจเจพ เจธเจผเฉเจฐเฉ‚ เจ•เจฐเฉ€เจเฅค เจจเจคเฉ€เจœเฉ‡ เจตเจœเฉ‹เจ‚, เจธเจพเจจเฉ‚เฉฐ เจ‡เจธ เจจเฉˆเจŸเจตเจฐเจ• เจŸเฉŒเจชเฉ‹เจฒเฉ‹เจœเฉ€ เจตเจฐเจ—เจพ เจ•เฉเจ เจชเฉเจฐเจพเจชเจค เจ•เจฐเจจเจพ เจšเจพเจนเฉ€เจฆเจพ เจนเฉˆ:
DNSTap เจ…เจคเฉ‡ BGP เจจเจพเจฒ ILV เจฌเจฒเจพเจ•เจฟเฉฐเจ— เจจเฉ‚เฉฐ เจฌเจพเจˆเจชเจพเจธ เจ•เจฐเฉ‹

เจ•เฉฐเจฎ เจฆเจพ เจคเจฐเจ•, เจฎเฉ‡เจฐเฉ‡ เจ–เจฟเจ†เจฒ เจตเจฟเฉฑเจš, เจšเจฟเฉฑเจคเจฐ เจคเฉ‹เจ‚ เจธเจชเจธเจผเจŸ เจนเฉˆ:

  • เจ•เจฒเจพเจ‡เฉฐเจŸ เจจเฉ‡ เจธเจพเจกเฉ‡ เจธเจฐเจตเจฐ เจจเฉ‚เฉฐ DNS เจฆเฉ‡ เจคเฉŒเจฐ 'เจคเฉ‡ เจ•เฉŒเจ‚เจซเจฟเจ—เจฐ เจ•เฉ€เจคเจพ เจนเฉ‹เจ‡เจ† เจนเฉˆ, เจ…เจคเฉ‡ DNS เจชเฉเฉฑเจ›เจ—เจฟเฉฑเจ›เจพเจ‚ เจจเฉ‚เฉฐ VPN 'เจคเฉ‡ เจตเฉ€ เจœเจพเจฃเจพ เจšเจพเจนเฉ€เจฆเจพ เจนเฉˆเฅค เจ‡เจน เจœเจผเจฐเฉ‚เจฐเฉ€ เจนเฉˆ เจคเจพเจ‚ เจ•เจฟ เจชเฉเจฐเจฆเจพเจคเจพ เจฌเจฒเจพเจ• เจ•เจฐเจจ เจฒเจˆ DNS เจ‡เฉฐเจŸเจฐเจธเฉˆเจชเจธเจผเจจ เจฆเฉ€ เจตเจฐเจคเฉ‹เจ‚ เจจเจพ เจ•เจฐ เจธเจ•เฉ‡เฅค
  • เจธเจพเจˆเจŸ เจจเฉ‚เฉฐ เจ–เฉ‹เจฒเฉเจนเจฃ เจตเฉ‡เจฒเฉ‡, เจ•เจฒเจพเจ‡เฉฐเจŸ เจ‡เฉฑเจ• DNS เจชเฉเฉฑเจ›เจ—เจฟเฉฑเจ› เจญเฉ‡เจœเจฆเจพ เจนเฉˆ เจœเจฟเจตเฉ‡เจ‚ เจ•เจฟ "xxx.org เจฆเฉ‡ IP เจ•เฉ€ เจนเจจ"
  • เจฌเฉ‡เจ…เฉฐเจค xxx.org เจจเฉ‚เฉฐ เจนเฉฑเจฒ เจ•เจฐเจฆเจพ เจนเฉˆ (เจœเจพเจ‚ เจ‡เจธเจจเฉ‚เฉฐ เจ•เฉˆเจธเจผ เจคเฉ‹เจ‚ เจฒเฉˆเจ‚เจฆเจพ เจนเฉˆ) เจ…เจคเฉ‡ เจ•เจฒเจพเจ‡เฉฐเจŸ เจจเฉ‚เฉฐ เจœเจตเจพเจฌ เจญเฉ‡เจœเจฆเจพ เจนเฉˆ โ€œxxx.org เจ•เฉ‹เจฒ เจ…เจœเจฟเจนเจพ เจ…เจคเฉ‡ เจ…เจœเจฟเจนเจพ IP เจนเฉˆโ€, เจ‡เจธเจจเฉ‚เฉฐ DNSTap เจฐเจพเจนเฉ€เจ‚ เจธเจฎเจพเจจเจพเจ‚เจคเจฐ เจฐเฉ‚เจช เจตเจฟเฉฑเจš เจกเฉเจชเจฒเฉ€เจ•เฉ‡เจŸ เจ•เจฐเจฆเจพ เจนเฉˆเฅค
  • dnstap-bgp เจตเจฟเฉฑเจš เจ‡เจนเจจเจพเจ‚ เจชเจคเจฟเจ†เจ‚ เจฆเฉ€ เจ˜เฉ‹เจธเจผเจฃเจพ เจ•เจฐเจฆเจพ เจนเฉˆ BIRD BGP เจฆเฉเจ†เจฐเจพ เจœเฉ‡เจ•เจฐ เจกเฉ‹เจฎเฉ‡เจจ เจฌเจฒเฉŒเจ• เจ•เฉ€เจคเฉ€ เจธเฉ‚เจšเฉ€ เจตเจฟเฉฑเจš เจนเฉˆ
  • BIRD เจจเจพเจฒ เจ‡เจนเจจเจพเจ‚ IPs เจฒเจˆ เจ‡เฉฑเจ• เจฐเฉ‚เจŸ เจฆเจพ เจ‡เจธเจผเจคเจฟเจนเจพเจฐ เจฆเจฟเฉฐเจฆเจพ เจนเฉˆ next-hop self เจ—เจพเจนเจ• เจฐเจพเจŠเจŸเจฐ
  • เจ•เจฒเจพเจ‡เฉฐเจŸ เจคเฉ‹เจ‚ เจ‡เจนเจจเจพเจ‚ IPs เจคเฉฑเจ• เจฆเฉ‡ เจฌเจพเจ…เจฆ เจตเจพเจฒเฉ‡ เจชเฉˆเจ•เฉ‡เจŸ เจธเฉเจฐเฉฐเจ— เจตเจฟเฉฑเจšเฉ‹เจ‚ เจฒเฉฐเจ˜เจฆเฉ‡ เจนเจจ

เจธเจฐเจตเจฐ 'เจคเฉ‡, เจฌเจฒเฉŒเจ• เจ•เฉ€เจคเฉ€เจ†เจ‚ เจธเจพเจˆเจŸเจพเจ‚ เจฆเฉ‡ เจฐเฉ‚เจŸเจพเจ‚ เจฒเจˆ, เจฎเฉˆเจ‚ BIRD เจฆเฉ‡ เจ…เฉฐเจฆเจฐ เจ‡เฉฑเจ• เจตเฉฑเจ–เจฐเฉ€ เจธเจพเจฐเจฃเฉ€ เจฆเฉ€ เจตเจฐเจคเฉ‹เจ‚ เจ•เจฐเจฆเจพ เจนเจพเจ‚ เจ…เจคเฉ‡ เจ‡เจน เจ•เจฟเจธเฉ‡ เจตเฉ€ เจคเจฐเฉ€เจ•เฉ‡ เจจเจพเจฒ OS เจจเจพเจฒ เจจเจนเฉ€เจ‚ เจ•เฉฑเจŸเจฆเจพ เจนเฉˆเฅค

เจ‡เจธ เจธเจ•เฉ€เจฎ เจตเจฟเฉฑเจš เจ‡เฉฑเจ• เจ•เจฎเฉ€ เจนเฉˆ: เจ—เจพเจนเจ• เจคเฉ‹เจ‚ เจชเจนเจฟเจฒเจพ SYN เจชเฉˆเจ•เฉ‡เจŸ, เจœเจผเจฟเจ†เจฆเจพเจคเจฐ เจธเฉฐเจญเจพเจตเจค เจคเฉŒเจฐ 'เจคเฉ‡, เจ˜เจฐเฉ‡เจฒเฉ‚ เจชเฉเจฐเจฆเจพเจคเจพ เจฆเฉเจ†เจฐเจพ เจ›เฉฑเจกเจฃ เจฆเจพ เจธเจฎเจพเจ‚ เจนเฉ‹เจตเฉ‡เจ—เจพเฅค เจฐเฉ‚เจŸ เจฆเจพ เจคเฉเจฐเฉฐเจค เจเจฒเจพเจจ เจจเจนเฉ€เจ‚ เจ•เฉ€เจคเจพ เจ—เจฟเจ† เจนเฉˆเฅค เจ…เจคเฉ‡ เจ‡เฉฑเจฅเฉ‡ เจตเจฟเจ•เจฒเจช เจ‡เจธ เจ—เฉฑเจฒ 'เจคเฉ‡ เจจเจฟเจฐเจญเจฐ เจ•เจฐเจฆเฉ‡ เจนเฉ‹เจ เจธเฉฐเจญเจต เจนเจจ เจ•เจฟ เจชเฉเจฐเจฆเจพเจคเจพ เจฌเจฒเจพเจ•เจฟเฉฐเจ— เจ•เจฟเจตเฉ‡เจ‚ เจ•เจฐเจฆเจพ เจนเฉˆเฅค เจœเฉ‡ เจ‰เจน เจฌเฉฑเจธ เจŸเฉเจฐเฉˆเจซเจฟเจ• เจ›เฉฑเจก เจฆเจฟเฉฐเจฆเจพ เจนเฉˆ, เจคเจพเจ‚ เจ•เฉ‹เจˆ เจธเจฎเฉฑเจธเจฟเจ† เจจเจนเฉ€เจ‚ เจนเฉˆ. เจ…เจคเฉ‡ เจœเฉ‡ เจ‰เจน เจ‡เจธ เจจเฉ‚เฉฐ เจ•เฉเจ เจกเฉ€เจชเฉ€เจ†เจˆ เจตเฉฑเจฒ เจฐเฉ€เจกเจพเจ‡เจฐเฉˆเจ•เจŸ เจ•เจฐเจฆเจพ เจนเฉˆ, เจคเจพเจ‚ (เจธเจฟเจงเจพเจ‚เจคเจ• เจคเฉŒเจฐ 'เจคเฉ‡) เจตเจฟเจธเจผเฉ‡เจธเจผ เจชเฉเจฐเจญเจพเจต เจธเฉฐเจญเจต เจนเจจ.

เจ‡เจน เจตเฉ€ เจธเฉฐเจญเจต เจนเฉˆ เจ•เจฟ เจ•เจฒเจพเจ‡เฉฐเจŸ DNS TTL เจšเจฎเจคเจ•เจพเจฐเจพเจ‚ เจฆเจพ เจธเจคเจฟเจ•เจพเจฐ เจจเจนเฉ€เจ‚ เจ•เจฐเจฆเฉ‡, เจœเจฟเจธ เจ•เจพเจฐเจจ เจ•เจฒเจพเจ‡เฉฐเจŸ เจ…เจจเจฌเจพเจ‰เจ‚เจก เจชเฉเฉฑเจ›เจฃ เจฆเฉ€ เจฌเจœเจพเจ เจ‡เจธเจฆเฉ‡ เจ—เฉฐเจฆเฉ€ เจ•เฉˆเจธเจผ เจตเจฟเฉฑเจšเฉ‹เจ‚ เจ•เฉเจ เจชเฉเจฐเจพเจฃเฉ€เจ†เจ‚ เจเจ‚เจŸเจฐเฉ€เจ†เจ‚ เจฆเฉ€ เจตเจฐเจคเฉ‹เจ‚ เจ•เจฐ เจธเจ•เจฆเจพ เจนเฉˆเฅค

เจ…เจญเจฟเจ†เจธ เจตเจฟเฉฑเจš, เจจเจพ เจคเจพเจ‚ เจชเจนเจฟเจฒเฉ€ เจ…เจคเฉ‡ เจจเจพ เจนเฉ€ เจฆเฉ‚เจœเฉ€ เจจเฉ‡ เจฎเฉ‡เจฐเฉ‡ เจฒเจˆ เจธเจฎเฉฑเจธเจฟเจ†เจตเจพเจ‚ เจชเฉˆเจฆเจพ เจ•เฉ€เจคเฉ€เจ†เจ‚, เจชเจฐ เจคเฉเจนเจพเจกเจพ เจฎเจพเจˆเจฒเฉ‡เจœ เจตเฉฑเจ–เจฐเจพ เจนเฉ‹ เจธเจ•เจฆเจพ เจนเฉˆเฅค

เจธเจฐเจตเจฐ เจŸเจฟเจŠเจจเจฟเฉฐเจ—

เจฐเฉ‹เจฒเจฟเฉฐเจ— เจฆเฉ€ เจธเฉŒเจ– เจฒเจˆ, เจฎเฉˆเจ‚ เจฒเจฟเจ–เจฟเจ† เจœเจตเจพเจฌเจฆเฉ‡เจน เจฒเจˆ เจญเฉ‚เจฎเจฟเจ•เจพ. เจ‡เจน เจฒเฉ€เจจเจ•เจธ เจฆเฉ‡ เจ…เจงเจพเจฐ เจคเฉ‡ เจธเจฐเจตเจฐ เจ…เจคเฉ‡ เจ•เจฒเจพเจ‡เฉฐเจŸ เจฆเฉ‹เจตเจพเจ‚ เจจเฉ‚เฉฐ เจ•เฉŒเจ‚เจซเจฟเจ—เจฐ เจ•เจฐ เจธเจ•เจฆเจพ เจนเฉˆ (เจกเฉ€เจฌ-เจ…เจงเจพเจฐเจฟเจค เจตเฉฐเจกเจพเจ‚ เจฒเจˆ เจคเจฟเจ†เจฐ เจ•เฉ€เจคเจพ เจ—เจฟเจ† เจนเฉˆ)เฅค เจธเจพเจฐเฉ€เจ†เจ‚ เจธเฉˆเจŸเจฟเฉฐเจ—เจพเจ‚ เจ•เจพเจซเจผเฉ€ เจธเจชเฉฑเจธเจผเจŸ เจนเจจ เจ…เจคเฉ‡ เจธเฉˆเฉฑเจŸ เจ•เฉ€เจคเฉ€เจ†เจ‚ เจ—เจˆเจ†เจ‚ เจนเจจ inventory.yml. เจ‡เจน เจญเฉ‚เจฎเจฟเจ•เจพ เจฎเฉ‡เจฐเฉ€ เจตเฉฑเจกเฉ€ เจชเจฒเฉ‡เจฌเฉเฉฑเจ• เจตเจฟเฉฑเจšเฉ‹เจ‚ เจ•เฉฑเจŸเฉ€ เจ—เจˆ เจนเฉˆ, เจ‡เจธเจฒเจˆ เจ‡เจธ เจตเจฟเฉฑเจš เจ—เจฒเจคเฉ€เจ†เจ‚ เจนเฉ‹ เจธเจ•เจฆเฉ€เจ†เจ‚ เจนเจจ - เจฌเฉ‡เจจเจคเฉ€เจ†เจ‚ เจจเฉ‚เฉฐ เจ–เจฟเฉฑเจšเฉ‹ เจœเฉ€ เจ†เจ‡เจ†เจ‚ เจจเฉ‚เฉฐ ๐Ÿ™‚

เจ†เจ‰ เจฎเฉเฉฑเจ– เจญเจพเจ—เจพเจ‚ เจตเจฟเฉฑเจšเฉ‹เจ‚ เจฒเฉฐเจ˜เฉ€เจ.

เจฌเฉ€.เจœเฉ€.เจชเฉ€

เจ‡เฉฑเจ•เฉ‹ เจนเฉ‹เจธเจŸ 'เจคเฉ‡ เจฆเฉ‹ BGP เจกเฉˆเจฎเจจ เจšเจฒเจพเจ‰เจฃ เจจเจพเจฒ เจ‡เฉฑเจ• เจฌเฉเจจเจฟเจ†เจฆเฉ€ เจธเจฎเฉฑเจธเจฟเจ† เจนเฉˆ: BIRD เจฒเฉ‹เจ•เจฒเจนเฉ‹เจธเจŸ (เจœเจพเจ‚ เจ•เจฟเจธเฉ‡ เจธเจฅเจพเจจเจ• เจ‡เฉฐเจŸเจฐเจซเฉ‡เจธ) เจจเจพเจฒ BGP เจชเฉ€เจ…เจฐเจฟเฉฐเจ— เจธเฉˆเฉฑเจŸเจ…เฉฑเจช เจจเจนเฉ€เจ‚ เจ•เจฐเจจเจพ เจšเจพเจนเฉเฉฐเจฆเจพ เจนเฉˆเฅค เจฌเจฟเจฒเจ•เฉเจฒ เจธเจผเจฌเจฆ เจคเฉ‹เจ‚. เจ—เฉ‚เจ—เจฒเจฟเฉฐเจ— เจ…เจคเฉ‡ เจฎเฉ‡เจฒเจฟเฉฐเจ—-เจฒเจฟเจธเจŸเจพเจ‚ เจจเฉ‚เฉฐ เจชเฉœเฉเจนเจจเจพ เจฎเจฆเจฆ เจจเจนเฉ€เจ‚ เจ•เจฐเจฆเจพ, เจ‰เจน เจฆเจพเจ…เจตเจพ เจ•เจฐเจฆเฉ‡ เจนเจจ เจ•เจฟ เจ‡เจน เจกเจฟเจœเจผเจพเจˆเจจ เจฆเฉเจ†เจฐเจพ เจนเฉˆ. เจธเจผเจพเจ‡เจฆ เจ•เฉ‹เจˆ เจคเจฐเฉ€เจ•เจพ เจนเฉˆ, เจชเจฐ เจฎเฉˆเจจเฉ‚เฉฐ เจ‡เจน เจจเจนเฉ€เจ‚ เจฎเจฟเจฒเจฟเจ†.

เจคเฉเจธเฉ€เจ‚ เจ‡เฉฑเจ• เจนเฉ‹เจฐ BGP เจกเฉˆเจฎเจจ เจ…เจœเจผเจฎเจพ เจธเจ•เจฆเฉ‡ เจนเฉ‹, เจชเจฐ เจฎเฉˆเจจเฉ‚เฉฐ BIRD เจชเจธเฉฐเจฆ เจนเฉˆ เจ…เจคเฉ‡ เจ‡เจน เจฎเฉ‡เจฐเฉ‡ เจฆเฉเจ†เจฐเจพ เจนเจฐ เจฅเจพเจ‚ เจตเจฐเจคเจฟเจ† เจœเจพเจ‚เจฆเจพ เจนเฉˆ, เจฎเฉˆเจ‚ เจ‡เจ•เจพเจˆเจ†เจ‚ เจชเฉˆเจฆเจพ เจจเจนเฉ€เจ‚ เจ•เจฐเจจเจพ เจšเจพเจนเฉเฉฐเจฆเจพเฅค

เจ‡เจธ เจฒเจˆ, เจฎเฉˆเจ‚ dnstap-bgp เจจเฉ‚เฉฐ เจจเฉˆเฉฑเจŸเจตเจฐเจ• เจจเฉ‡เจฎเจธเจชเฉ‡เจธ เจฆเฉ‡ เจ…เฉฐเจฆเจฐ เจฒเฉเจ•เจพ เจฆเจฟเฉฑเจคเจพ เจนเฉˆ, เจœเฉ‹ เจ•เจฟ เจตเฉˆเจฅ เจ‡เฉฐเจŸเจฐเจซเฉ‡เจธ เจฐเจพเจนเฉ€เจ‚ เจฐเฉ‚เจŸ เจจเจพเจฒ เจœเฉเฉœเจฟเจ† เจนเฉ‹เจ‡เจ† เจนเฉˆ: เจ‡เจน เจ‡เฉฑเจ• เจชเจพเจˆเจช เจตเจฐเจ—เจพ เจนเฉˆ, เจœเจฟเจธ เจฆเฉ‡ เจธเจฟเจฐเฉ‡ เจตเฉฑเจ–-เจตเฉฑเจ– เจจเจพเจฎ-เจธเจฅเจพเจจเจพเจ‚ เจตเจฟเฉฑเจš เจšเจฟเจชเจ• เจœเจพเจ‚เจฆเฉ‡ เจนเจจเฅค เจ‡เจนเจจเจพเจ‚ เจตเจฟเฉฑเจšเฉ‹เจ‚ เจนเจฐเฉ‡เจ• เจธเจฟเจฐเฉ‡ 'เจคเฉ‡, เจ…เจธเฉ€เจ‚ เจชเฉเจฐเจพเจˆเจตเฉ‡เจŸ p2p IP เจเจกเจฐเฉˆเฉฑเจธ เจฒเจŸเจ•เจฆเฉ‡ เจนเจพเจ‚ เจœเฉ‹ เจนเฉ‹เจธเจŸ เจคเฉ‹เจ‚ เจฌเจพเจนเจฐ เจจเจนเฉ€เจ‚ เจœเจพเจ‚เจฆเฉ‡, เจ‡เจธ เจฒเจˆ เจ‰เจน เจ•เฉเจ เจตเฉ€ เจนเฉ‹ เจธเจ•เจฆเฉ‡ เจนเจจเฅค เจ‡เจน เจ‰เจนเฉ€ เจตเจฟเจงเฉ€ เจนเฉˆ เจœเฉ‹ เจ…เฉฐเจฆเจฐ เจชเฉเจฐเจ•เจฟเจฐเจฟเจ†เจตเจพเจ‚ เจจเฉ‚เฉฐ เจเจ•เจธเฉˆเจธ เจ•เจฐเจจ เจฒเจˆ เจตเจฐเจคเฉ€ เจœเจพเจ‚เจฆเฉ€ เจนเฉˆ เจธเจญ เจฆเฉเจ†เจฐเจพ เจชเจฟเจ†เจฐ เจ•เฉ€เจคเจพ เจกเฉŒเจ•เจฐ เจ…เจคเฉ‡ เจนเฉ‹เจฐ เจ•เฉฐเจŸเฉ‡เจจเจฐเฅค

เจ‡เจธ เจฒเจˆ เจ‡เจน เจฒเจฟเจ–เจฟเจ† เจ—เจฟเจ† เจธเฉ€ เจธเจ•เฉเจฐเจฟเจชเจŸ เจ…เจคเฉ‡ เจ†เจชเจฃเฉ‡ เจ†เจช เจจเฉ‚เฉฐ เจตเจพเจฒเจพเจ‚ เจฆเฉเจ†เจฐเจพ เจ•เจฟเจธเฉ‡ เจนเฉ‹เจฐ เจจเฉ‡เจฎเจธเจชเฉ‡เจธ เจตเจฟเฉฑเจš เจ–เจฟเฉฑเจšเจฃ เจฒเจˆ เจ‰เฉฑเจชเจฐ เจฆเฉฑเจธเฉ‡ เจ•เจพเจฐเจœเจ•เฉเจธเจผเจฒเจคเจพ เจจเฉ‚เฉฐ dnstap-bgp เจตเจฟเฉฑเจš เจœเฉ‹เฉœเจฟเจ† เจ—เจฟเจ† เจธเฉ€เฅค เจ‡เจธเจฆเฉ‡ เจ•เจพเจฐเจจ, เจ‡เจธเจจเฉ‚เฉฐ เจฐเฉ‚เจŸ เจฆเฉ‡ เจคเฉŒเจฐ เจคเฉ‡ เจšเจฒเจพเจ‡เจ† เจœเจพเจฃเจพ เจšเจพเจนเฉ€เจฆเจพ เจนเฉˆ เจœเจพเจ‚ setcap เจ•เจฎเจพเจ‚เจก เจฆเฉเจ†เจฐเจพ CAP_SYS_ADMIN เจฌเจพเจˆเจจเจฐเฉ€ เจจเฉ‚เฉฐ เจœเจพเจฐเฉ€ เจ•เฉ€เจคเจพ เจœเจพเจฃเจพ เจšเจพเจนเฉ€เจฆเจพ เจนเฉˆเฅค

เจจเฉ‡เจฎเจธเจชเฉ‡เจธ เจฌเจฃเจพเจ‰เจฃ เจฒเจˆ เจ‰เจฆเจพเจนเจฐเจจ เจธเจ•เฉเจฐเจฟเจชเจŸ

#!/bin/bash

NS="dtap"

IP="/sbin/ip"
IPNS="$IP netns exec $NS $IP"

IF_R="veth-$NS-r"
IF_NS="veth-$NS-ns"

IP_R="192.168.149.1"
IP_NS="192.168.149.2"

/bin/systemctl stop dnstap-bgp || true

$IP netns del $NS > /dev/null 2>&1
$IP netns add $NS

$IP link add $IF_R type veth peer name $IF_NS
$IP link set $IF_NS netns $NS

$IP addr add $IP_R remote $IP_NS dev $IF_R
$IP link set $IF_R up

$IPNS addr add $IP_NS remote $IP_R dev $IF_NS
$IPNS link set $IF_NS up

/bin/systemctl start dnstap-bgp

dnstap-bgp.conf

namespace = "dtap"
domains = "/var/cache/rkn_domains.txt"
ttl = "168h"

[dnstap]
listen = "/tmp/dnstap.sock"
perm = "0666"

[bgp]
as = 65000
routerid = "192.168.149.2"

peers = [
    "192.168.149.1",
]

bird.conf

router id 192.168.1.1;

table rkn;

# Clients
protocol bgp bgp_client1 {
    table rkn;
    local as 65000;
    neighbor 192.168.1.2 as 65000;
    direct;
    bfd on;
    next hop self;
    graceful restart;
    graceful restart time 60;
    export all;
    import none;
}

# DNSTap-BGP
protocol bgp bgp_dnstap {
    table rkn;
    local as 65000;
    neighbor 192.168.149.2 as 65000;
    direct;
    passive on;
    rr client;
    import all;
    export none;
}

# Static routes list
protocol static static_rkn {
    table rkn;
    include "rkn_routes.list";
    import all;
    export none;
}

rkn_routes.list

route 3.226.79.85/32 via "ens3";
route 18.236.189.0/24 via "ens3";
route 3.224.21.0/24 via "ens3";
...

DNS เจจเฉ‚เฉฐ

เจฎเฉ‚เจฒ เจฐเฉ‚เจช เจตเจฟเฉฑเจš, เจ‰เจฌเฉฐเจŸเฉ‚ เจตเจฟเฉฑเจš, เจ…เจจเจฌเจพเจ‰เจ‚เจก เจฌเจพเจˆเจจเจฐเฉ€ เจจเฉ‚เฉฐ เจเจชเจ†เจฐเจฎเจฐ เจชเฉเจฐเฉ‹เจซเจพเจˆเจฒ เจฆเฉเจ†เจฐเจพ เจ•เจฒเฉˆเจ‚เจช เจ•เฉ€เจคเจพ เจœเจพเจ‚เจฆเจพ เจนเฉˆ, เจœเฉ‹ เจ‡เจธเจจเฉ‚เฉฐ เจนเจฐ เจ•เจฟเจธเจฎ เจฆเฉ‡ DNSTap เจธเจพเจ•เจŸเจพเจ‚ เจจเจพเจฒ เจœเฉเฉœเจจ เจคเฉ‹เจ‚ เจฎเจจเฉเจนเจพ เจ•เจฐเจฆเจพ เจนเฉˆเฅค เจคเฉเจธเฉ€เจ‚ เจœเจพเจ‚ เจคเจพเจ‚ เจ‡เจธ เจชเฉเจฐเฉ‹เจซเจพเจˆเจฒ เจจเฉ‚เฉฐ เจฎเจฟเจŸเจพ เจธเจ•เจฆเฉ‡ เจนเฉ‹, เจœเจพเจ‚ เจ‡เจธเจจเฉ‚เฉฐ เจ…เจฏเฉ‹เจ— เจ•เจฐ เจธเจ•เจฆเฉ‡ เจนเฉ‹:

# cd /etc/apparmor.d/disable && ln -s ../usr.sbin.unbound .
# apparmor_parser -R /etc/apparmor.d/usr.sbin.unbound

เจ‡เจน เจธเจผเจพเจ‡เจฆ เจชเจฒเฉ‡เจฌเฉเฉฑเจ• เจตเจฟเฉฑเจš เจœเฉ‹เฉœเจฟเจ† เจœเจพเจฃเจพ เจšเจพเจนเฉ€เจฆเจพ เจนเฉˆเฅค เจ‡เจน เจ†เจฆเจฐเจธเจผ เจนเฉˆ, เจฌเฉ‡เจธเจผเจ•, เจชเฉเจฐเฉ‹เจซเจพเจˆเจฒ เจจเฉ‚เฉฐ เจ เฉ€เจ• เจ•เจฐเจจเจพ เจ…เจคเฉ‡ เจœเจผเจฐเฉ‚เจฐเฉ€ เจ…เจงเจฟเจ•เจพเจฐ เจœเจพเจฐเฉ€ เจ•เจฐเจจเจพ, เจชเจฐ เจฎเฉˆเจ‚ เจฌเจนเฉเจค เจ†เจฒเจธเฉ€ เจธเฉ€.

unbound.conf

server:
    chroot: ""
    port: 53
    interface: 0.0.0.0
    root-hints: "/var/lib/unbound/named.root"
    auto-trust-anchor-file: "/var/lib/unbound/root.key"
    access-control: 192.168.0.0/16 allow

remote-control:
    control-enable: yes
    control-use-cert: no

dnstap:
    dnstap-enable: yes
    dnstap-socket-path: "/tmp/dnstap.sock"
    dnstap-send-identity: no
    dnstap-send-version: no

    dnstap-log-client-response-messages: yes

เจธเฉ‚เจšเฉ€เจ†เจ‚ เจจเฉ‚เฉฐ เจกเจพเจŠเจจเจฒเฉ‹เจก เจ•เจฐเจจเจพ เจ…เจคเฉ‡ เจชเฉเจฐเฉ‹เจธเฉˆเจธ เจ•เจฐเจจเจพ

IP เจชเจคเจฟเจ†เจ‚ เจฆเฉ€ เจธเฉ‚เจšเฉ€ เจจเฉ‚เฉฐ เจกเจพเจŠเจจเจฒเฉ‹เจก เจ•เจฐเจจ เจ…เจคเฉ‡ เจชเฉเจฐเฉ‹เจธเฉˆเจธ เจ•เจฐเจจ เจฒเจˆ เจธเจ•เฉเจฐเจฟเจชเจŸ
เจ‡เจน เจธเฉ‚เจšเฉ€ เจจเฉ‚เฉฐ เจกเจพเจŠเจจเจฒเฉ‹เจก เจ•เจฐเจฆเจพ เจนเฉˆ, เจ…เจ—เฉ‡เจคเจฐ เจคเฉฑเจ• เจœเฉ‹เฉœเจฆเจพ เจนเฉˆ pfx. The เจจเจพ_เจœเฉ‹เฉœเฉ‹ ะธ เจจเจพ_เจธเฉฐเจ–เฉ‡เจช เจ•เจฐเฉ‹ เจคเฉเจธเฉ€เจ‚ IPs เจ…เจคเฉ‡ เจจเฉˆเฉฑเจŸเจตเจฐเจ•เจพเจ‚ เจจเฉ‚เฉฐ เจ›เฉฑเจกเจฃ เจœเจพเจ‚ เจธเฉฐเจ–เฉ‡เจช เจจเจพ เจ•เจฐเจจ เจฒเจˆ เจ•เจนเจฟ เจธเจ•เจฆเฉ‡ เจนเฉ‹เฅค เจฎเฉˆเจจเฉ‚เฉฐ เจ‡เจธเจฆเฉ€ เจฒเฉ‹เฉœ เจธเฉ€เฅค เจฎเฉ‡เจฐเฉ‡ VPS เจฆเจพ เจธเจฌเจจเฉˆเฉฑเจŸ เจฌเจฒเจพเจ•เจฒเจฟเจธเจŸ ๐Ÿ™‚ เจตเจฟเฉฑเจš เจธเฉ€

เจฎเจœเจผเฉ‡เจฆเจพเจฐ เจ—เฉฑเจฒ เจ‡เจน เจนเฉˆ เจ•เจฟ RosKomSvoboda API เจกเจฟเจซเฉŒเจฒเจŸ เจชเจพเจˆเจฅเจจ เจ‰เจชเจญเฉ‹เจ—เจคเจพ เจเจœเฉฐเจŸ เจจเจพเจฒ เจฌเฉ‡เจจเจคเฉ€เจ†เจ‚ เจจเฉ‚เฉฐ เจฐเฉ‹เจ•เจฆเจพ เจนเฉˆ. เจฒเฉฑเจ—เจฆเจพ เจนเฉˆ เจ•เจฟ เจธเจ•เฉเจฐเจฟเจชเจŸ-เจฌเฉฑเจšเฉ‡ เจจเฉ‚เฉฐ เจฎเจฟเจฒ เจ—เจฟเจ† เจนเฉˆเฅค เจ‡เจธ เจฒเจˆ, เจ…เจธเฉ€เจ‚ เจ‡เจธเจจเฉ‚เฉฐ เจ“เจ—เจจเฉ‡เจฒเจฟเจธ เจตเจฟเฉฑเจš เจฌเจฆเจฒเจฆเฉ‡ เจนเจพเจ‚.

เจนเฉเจฃ เจคเฉฑเจ•, เจ‡เจน เจธเจฟเจฐเจซเจผ IPv4 เจจเจพเจฒ เจ•เฉฐเจฎ เจ•เจฐเจฆเจพ เจนเฉˆเฅค IPv6 เจฆเจพ เจธเจผเฉ‡เจ…เจฐ เจ›เฉ‹เจŸเจพ เจนเฉˆ, เจชเจฐ เจ‡เจธเจจเฉ‚เฉฐ เจ เฉ€เจ• เจ•เจฐเจจเจพ เจ†เจธเจพเจจ เจนเฉ‹เจตเฉ‡เจ—เจพเฅค เจœเจฆเฉ‹เจ‚ เจคเฉฑเจ• เจคเฉเจนเจพเจจเฉ‚เฉฐ เจฌเจฐเจก6 เจฆเฉ€ เจตเฉ€ เจตเจฐเจคเฉ‹เจ‚ เจจเจนเฉ€เจ‚ เจ•เจฐเจจเฉ€ เจชเจตเฉ‡เจ—เฉ€เฅค

rkn.py

#!/usr/bin/python3

import json, urllib.request, ipaddress as ipa

url = 'https://api.reserve-rbl.ru/api/v2/ips/json'
pfx = '24'

dont_summarize = {
    # ipa.IPv4Network('1.1.1.0/24'),
}

dont_add = {
    # ipa.IPv4Address('1.1.1.1'),
}

req = urllib.request.Request(
    url,
    data=None, 
    headers={
        'User-Agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_9_3) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/35.0.1916.47 Safari/537.36'
    }
)

f = urllib.request.urlopen(req)
ips = json.loads(f.read().decode('utf-8'))

prefix32 = ipa.IPv4Address('255.255.255.255')

r = {}
for i in ips:
    ip = ipa.ip_network(i)
    if not isinstance(ip, ipa.IPv4Network):
        continue

    addr = ip.network_address

    if addr in dont_add:
        continue

    m = ip.netmask
    if m != prefix32:
        r[m] = [addr, 1]
        continue

    sn = ipa.IPv4Network(str(addr) + '/' + pfx, strict=False)

    if sn in dont_summarize:
        tgt = addr
    else:
        tgt = sn

    if not sn in r:
        r[tgt] = [addr, 1]
    else:
        r[tgt][1] += 1

o = []
for n, v in r.items():
    if v[1] == 1:
        o.append(str(v[0]) + '/32')
    else:
        o.append(n)

for k in o:
    print(k)

เจ…เฉฑเจชเจกเฉ‡เจŸ เจ•เจฐเจจ เจฒเจˆ เจธเจ•เฉเจฐเจฟเจชเจŸ
เจฎเฉˆเจ‚ เจ‡เจธเจจเฉ‚เฉฐ เจฆเจฟเจจ เจตเจฟเฉฑเจš เจ‡เฉฑเจ• เจตเจพเจฐ เจคเจพเจœ เจ‰เฉฑเจคเฉ‡ เจšเจฒเจพเจ‰เจ‚เจฆเจพ เจนเจพเจ‚, เจนเฉ‹ เจธเจ•เจฆเจพ เจนเฉˆ เจ•เจฟ เจ‡เจธเจจเฉ‚เฉฐ เจนเจฐ 4 เจ˜เฉฐเจŸเจฟเจ†เจ‚ เจตเจฟเฉฑเจš เจ–เจฟเฉฑเจšเจฃ เจฆเฉ‡ เจฏเฉ‹เจ— เจนเฉ‹เจตเฉ‡เฅค เจ‡เจน, เจฎเฉ‡เจฐเฉ€ เจฐเจพเจ เจตเจฟเฉฑเจš, เจ‡เจน เจจเจตเจฟเจ†เจ‰เจฃ เจฆเฉ€ เจฎเจฟเจ†เจฆ เจนเฉˆ เจœเฉ‹ RKN เจจเฉ‚เฉฐ เจชเฉเจฐเจฆเจพเจคเจพเจตเจพเจ‚ เจคเฉ‹เจ‚ เจฒเฉ‹เฉœเฉ€เจ‚เจฆเฉ€ เจนเฉˆเฅค เจ‡เจธ เจคเฉ‹เจ‚ เจ‡เจฒเจพเจตเจพ, เจ‰เจนเจจเจพเจ‚ เจ•เฉ‹เจฒ เจ•เฉเจ เจนเฉ‹เจฐ เจ…เจคเจฟ-เจœเจผเจฐเฉ‚เจฐเฉ€ เจฌเจฒเจพเจ•เจฟเฉฐเจ— เจนเฉˆ, เจœเฉ‹ เจคเฉ‡เจœเจผเฉ€ เจจเจพเจฒ เจชเจนเฉเฉฐเจš เจธเจ•เจฆเฉ‡ เจนเจจเฅค

เจนเฉ‡เจ  เจฒเจฟเจ–เฉ‡ เจ•เฉฐเจฎ เจ•เจฐเจฆเจพ เจนเฉˆ:

  • เจชเจนเจฟเจฒเฉ€ เจธเจ•เฉเจฐเจฟเจชเจŸ เจšเจฒเจพเจ‰เจ‚เจฆเจพ เจนเฉˆ เจ…เจคเฉ‡ เจฐเฉ‚เจŸเจพเจ‚ เจฆเฉ€ เจธเฉ‚เจšเฉ€ เจจเฉ‚เฉฐ เจ…เฉฑเจชเจกเฉ‡เจŸ เจ•เจฐเจฆเจพ เจนเฉˆ (rkn_routes.list) BIRD เจฒเจˆ
  • BIRD เจจเฉ‚เฉฐ เจฐเฉ€เจฒเฉ‹เจก เจ•เจฐเฉ‹
  • dnstap-bgp เจฒเจˆ เจกเฉ‹เจฎเฉ‡เจจเจพเจ‚ เจฆเฉ€ เจธเฉ‚เจšเฉ€ เจจเฉ‚เฉฐ เจ…เฉฑเจชเจกเฉ‡เจŸ เจ…เจคเฉ‡ เจธเจพเจซเจผ เจ•เจฐเจฆเจพ เจนเฉˆ
  • dnstap-bgp เจจเฉ‚เฉฐ เจฐเฉ€เจฒเฉ‹เจก เจ•เจฐเฉ‹

rkn_update.sh

#!/bin/bash

ROUTES="/etc/bird/rkn_routes.list"
DOMAINS="/var/cache/rkn_domains.txt"

# Get & summarize routes
/opt/rkn.py | sed 's/(.*)/route 1 via "ens3";/' > $ROUTES.new

if [ $? -ne 0 ]; then
    rm -f $ROUTES.new
    echo "Unable to download RKN routes"
    exit 1
fi

if [ -e $ROUTES ]; then
    mv $ROUTES $ROUTES.old
fi

mv $ROUTES.new $ROUTES

/bin/systemctl try-reload-or-restart bird

# Get domains
curl -s https://api.reserve-rbl.ru/api/v2/domains/json -o - | jq -r '.[]' | sed 's/^*.//' | sort | uniq > $DOMAINS.new

if [ $? -ne 0 ]; then
    rm -f $DOMAINS.new
    echo "Unable to download RKN domains"
    exit 1
fi

if [ -e $DOMAINS ]; then
    mv $DOMAINS $DOMAINS.old
fi

mv $DOMAINS.new $DOMAINS

/bin/systemctl try-reload-or-restart dnstap-bgp

เจ‰เจน เจฌเจฟเจจเจพเจ‚ เจธเฉ‹เจšเฉ‡-เจธเจฎเจเฉ‡ เจฒเจฟเจ–เฉ‡ เจ—เจ เจธเจจ, เจ‡เจธ เจฒเจˆ เจœเฉ‡ เจคเฉเจธเฉ€เจ‚ เจ•เฉเจ เจ…เจœเจฟเจนเจพ เจฆเฉ‡เจ–เจฆเฉ‡ เจนเฉ‹ เจœเจฟเจธ เจจเฉ‚เฉฐ เจธเฉเจงเจพเจฐเจฟเจ† เจœเจพ เจธเจ•เจฆเจพ เจนเฉˆ - เจ‡เจธ เจฒเจˆ เจœเจพเจ“เฅค

เจ•เจฒเจพเจ‡เฉฐเจŸ เจธเฉˆเฉฑเจŸเจ…เฉฑเจช

เจ‡เฉฑเจฅเฉ‡ เจฎเฉˆเจ‚ เจฒเฉ€เจจเจ•เจธ เจฐเจพเจŠเจŸเจฐเจพเจ‚ เจฒเจˆ เจ‰เจฆเจพเจนเจฐเจฃ เจฆเฉ‡เจตเจพเจ‚เจ—เจพ, เจชเจฐ เจฎเจฟเจ•เจฐเฉ‹เจŸเจฟเจ• / เจธเจฟเจธเจ•เฉ‹ เจฆเฉ‡ เจฎเจพเจฎเจฒเฉ‡ เจตเจฟเฉฑเจš เจ‡เจน เจนเฉ‹เจฐ เจตเฉ€ เจ†เจธเจพเจจ เจนเฉ‹เจฃเจพ เจšเจพเจนเฉ€เจฆเจพ เจนเฉˆ.

เจชเจนเจฟเจฒเจพเจ‚, เจ…เจธเฉ€เจ‚ BIRD เจธเฉˆเจŸ เจ…เจช เจ•เจฐเจฆเฉ‡ เจนเจพเจ‚:

bird.conf

router id 192.168.1.2;
table rkn;

protocol device {
    scan time 10;
};

# Servers
protocol bgp bgp_server1 {
    table rkn;
    local as 65000;
    neighbor 192.168.1.1 as 65000;
    direct;
    bfd on;
    next hop self;
    graceful restart;
    graceful restart time 60;
    rr client;
    export none;
    import all;
}

protocol kernel {
    table rkn;
    kernel table 222;
    scan time 10;
    export all;
    import none;
}

เจ‡เจธ เจคเจฐเฉเจนเจพเจ‚, เจ…เจธเฉ€เจ‚ BGP เจคเฉ‹เจ‚ เจชเฉเจฐเจพเจชเจค เจฐเฉ‚เจŸเจพเจ‚ เจจเฉ‚เฉฐ เจ•เจฐเจจเจฒ เจฐเฉ‚เจŸเจฟเฉฐเจ— เจŸเฉ‡เจฌเจฒ เจจเฉฐเจฌเจฐ 222 เจจเจพเจฒ เจธเจฎเจ•เจพเจฒเฉ€ เจ•เจฐเจพเจ‚เจ—เฉ‡เฅค

เจ‰เจธ เจคเฉ‹เจ‚ เจฌเจพเจ…เจฆ, เจกเจฟเจซเฉŒเจฒเจŸ เจจเฉ‚เฉฐ เจฆเฉ‡เจ–เจฃ เจคเฉ‹เจ‚ เจชเจนเจฟเจฒเจพเจ‚ เจ•เจฐเจจเจฒ เจจเฉ‚เฉฐ เจ‡เจธ เจชเจฒเฉ‡เจŸ เจจเฉ‚เฉฐ เจฆเฉ‡เจ–เจฃ เจฒเจˆ เจ•เจนเจฟเจฃเจพ เจ•เจพเจซเจผเฉ€ เจนเฉˆ:

# ip rule add from all pref 256 lookup 222
# ip rule
0:  from all lookup local
256:    from all lookup 222
32766:  from all lookup main
32767:  from all lookup default

เจธเจญ เจ•เฉเจ, เจ‡เจน เจธเจฐเจตเจฐ เจฆเฉ‡ เจธเฉเจฐเฉฐเจ— IP เจเจกเจฐเฉˆเฉฑเจธ เจจเฉ‚เฉฐ DNS เจตเจœเฉ‹เจ‚ เจตเฉฐเจกเจฃ เจฒเจˆ เจฐเจพเจŠเจŸเจฐ 'เจคเฉ‡ DHCP เจจเฉ‚เฉฐ เจ•เฉŒเจ‚เจซเจฟเจ—เจฐ เจ•เจฐเจจเจพ เจฌเจพเจ•เฉ€ เจนเฉˆ, เจ…เจคเฉ‡ เจธเจ•เฉ€เจฎ เจคเจฟเจ†เจฐ เจนเฉˆเฅค

shortcomings

เจกเฉ‹เจฎเฉ‡เจจเจพเจ‚ เจฆเฉ€ เจธเฉ‚เจšเฉ€ เจฌเจฃเจพเจ‰เจฃ เจ…เจคเฉ‡ เจชเฉเจฐเจ•เจฟเจฐเจฟเจ† เจ•เจฐเจจ เจฒเจˆ เจฎเฉŒเจœเฉ‚เจฆเจพ เจเจฒเจ—เฉ‹เจฐเจฟเจฆเจฎ เจฆเฉ‡ เจจเจพเจฒ, เจ‡เจธ เจตเจฟเฉฑเจš เจนเฉ‹เจฐ เจšเฉ€เจœเจผเจพเจ‚ เจฆเฉ‡ เจจเจพเจฒ, เจธเจผเจพเจฎเจฒ เจนเจจ, youtube.com เจ…เจคเฉ‡ เจ‡เจธเจฆเฉ‡ CDNs.

เจ…เจคเฉ‡ เจ‡เจน เจ‡เจธ เจคเฉฑเจฅ เจตเฉฑเจฒ เจ–เฉœเจฆเจพ เจนเฉˆ เจ•เจฟ เจธเจพเจฐเฉ‡ เจตเฉ€เจกเฉ€เจ“ เจตเฉ€เจชเฉ€เจเจจ เจฐเจพเจนเฉ€เจ‚ เจœเจพเจฃเจ—เฉ‡, เจœเฉ‹ เจชเฉ‚เจฐเฉ‡ เจšเฉˆเจจเจฒ เจจเฉ‚เฉฐ เจฌเฉฐเจฆ เจ•เจฐ เจธเจ•เจฆเจพ เจนเฉˆ. เจธเจผเจพเจ‡เจฆ เจ‡เจน เจชเฉเจฐเจธเจฟเฉฑเจง เจกเฉ‹เจฎเฉ‡เจจเจพเจ‚ เจฆเฉ€ เจ‡เฉฑเจ• เจธเฉ‚เจšเฉ€ เจจเฉ‚เฉฐ เจ•เฉฐเจชเจพเจ‡เจฒ เจ•เจฐเจจ เจฆเฉ‡ เจฏเฉ‹เจ— เจนเฉˆ-เจฌเฉ‡เจฆเจ–เจฒเฉ€ เจœเฉ‹ เจ•เจฟ เจธเจฎเฉ‡เจ‚ เจฒเจˆ เจ†เจฐเจ•เฉ‡เจเจจ เจจเฉ‚เฉฐ เจฌเจฒเฉŒเจ• เจ•เจฐเจฆเฉ‡ เจนเจจ, เจนเจฟเฉฐเจฎเจค เจชเจคเจฒเฉ‡ เจนเจจ. เจ…เจคเฉ‡ เจชเจพเจฐเจธ เจ•เจฐเจจ เจตเฉ‡เจฒเฉ‡ เจ‰เจนเจจเจพเจ‚ เจจเฉ‚เฉฐ เจ›เฉฑเจก เจฆเจฟเจ“เฅค

เจธเจฟเฉฑเจŸเจพ

เจตเจฐเจฃเจฟเจค เจตเจฟเจงเฉ€ เจคเฉเจนเจพเจจเฉ‚เฉฐ เจฒเจ—เจญเจ— เจ•เจฟเจธเฉ‡ เจตเฉ€ เจฌเจฒเจพเจ•เจฟเฉฐเจ— เจจเฉ‚เฉฐ เจฌเจพเจˆเจชเจพเจธ เจ•เจฐเจจ เจฆเฉ€ เจ†เจ—เจฟเจ† เจฆเจฟเฉฐเจฆเฉ€ เจนเฉˆ เจœเฉ‹ เจชเฉเจฐเจฆเจพเจคเจพ เจตเจฐเจคเจฎเจพเจจ เจตเจฟเฉฑเจš เจฒเจพเจ—เฉ‚ เจ•เจฐเจฆเฉ‡ เจนเจจ.

เจ…เจธเจฒ เจตเจฟเฉฑเจš, dnstap-bgp เจ•เจฟเจธเฉ‡ เจนเฉ‹เจฐ เจ‰เจฆเฉ‡เจธเจผ เจฒเจˆ เจตเจฐเจคเจฟเจ† เจœเจพ เจธเจ•เจฆเจพ เจนเฉˆ เจœเจฟเฉฑเจฅเฉ‡ เจกเฉ‹เจฎเฉ‡เจจ เจจเจพเจฎ เจฆเฉ‡ เจ†เจงเจพเจฐ 'เจคเฉ‡ เจŸเฉเจฐเฉˆเจซเจฟเจ• เจจเจฟเจฏเฉฐเจคเจฐเจฃ เจฆเฉ‡ เจ•เฉเจ เจชเฉฑเจงเจฐ เจฆเฉ€ เจฒเฉ‹เฉœ เจนเฉเฉฐเจฆเฉ€ เจนเฉˆเฅค เจฌเจธ เจฏเจพเจฆ เจฐเฉฑเจ–เฉ‹ เจ•เจฟ เจธเจพเจกเฉ‡ เจธเจฎเฉ‡เจ‚ เจตเจฟเฉฑเจš, เจ‡เฉฑเจ• เจนเจœเจผเจพเจฐ เจธเจพเจˆเจŸเจพเจ‚ เจ‡เฉฑเจ•เฉ‹ IP เจชเจคเฉ‡ 'เจคเฉ‡ เจฒเจŸเจ• เจธเจ•เจฆเฉ€เจ†เจ‚ เจนเจจ (เจ‰เจฆเจพเจนเจฐเจฃ เจฒเจˆ, เจ•เฉเจ เจ•เจฒเจพเจ‰เจกเจซเจฒเฉ‡เจ…เจฐ เจฆเฉ‡ เจชเจฟเฉฑเจ›เฉ‡), เจ‡เจธ เจฒเจˆ เจ‡เจธ เจตเจฟเจงเฉ€ เจฆเฉ€ เจ˜เฉฑเจŸ เจธเจผเฉเฉฑเจงเจคเจพ เจนเฉˆ.

เจชเจฐ เจคเจพเจฒเฉ‡ เจจเฉ‚เฉฐ เจฌเจพเจˆเจชเจพเจธ เจ•เจฐเจจ เจฆเฉ€เจ†เจ‚ เจœเจผเจฐเฉ‚เจฐเจคเจพเจ‚ เจฒเจˆ, เจ‡เจน เจ•เจพเจซเจผเฉ€ เจนเฉˆ.

เจœเฉ‹เฉœ, เจธเฉฐเจชเจพเจฆเจจ, เจชเฉเฉฑเจฒ เจฌเฉ‡เจจเจคเฉ€เจ†เจ‚ - เจธเฉเจ†เจ—เจค เจนเฉˆ!

เจธเจฐเฉ‹เจค: www.habr.com

เจ‡เฉฑเจ• เจŸเจฟเฉฑเจชเจฃเฉ€ เจœเฉ‹เฉœเฉ‹