ваше сообщение коммита

This commit is contained in:
2025-10-03 18:48:11 +03:00
parent ad7b8e9716
commit 67cf473455
42 changed files with 5515 additions and 1180 deletions

View File

@@ -2,6 +2,11 @@ const express = require('express');
const router = express.Router();
const fs = require('fs');
const path = require('path');
const https = require('https');
const { promisify } = require('util');
const dns = require('dns');
const resolve4 = promisify(dns.resolve4);
const SSH_DIR = path.join(process.env.HOME || process.env.USERPROFILE, '.ssh');
const DEFAULT_KEY_PATH = path.join(SSH_DIR, 'id_rsa');
@@ -39,4 +44,49 @@ router.get('/ssh-key/public', (req, res) => {
}
});
// GET /api/dns-check/:domain - Check DNS and get IP address
router.get('/dns-check/:domain', async (req, res) => {
try {
const domain = req.params.domain;
if (!domain) {
return res.status(400).json({
success: false,
message: 'Domain parameter is required'
});
}
console.log(`Checking DNS for domain: ${domain}`);
// Используем встроенный DNS resolver Node.js
const addresses = await resolve4(domain);
if (addresses && addresses.length > 0) {
const ip = addresses[0];
console.log(`DNS resolved: ${domain}${ip}`);
res.json({
success: true,
domain: domain,
ip: ip,
message: `Домен ${domain} разрешен в IP: ${ip}`
});
} else {
res.status(404).json({
success: false,
domain: domain,
message: `DNS запись для домена ${domain} не найдена`
});
}
} catch (error) {
console.error(`DNS check error for ${req.params.domain}:`, error.message);
res.status(500).json({
success: false,
domain: req.params.domain,
message: `Ошибка проверки DNS: ${error.message}`
});
}
});
module.exports = router;