... Статья пока что является черновиком, на основе копии аналогичной из Carbon AS 5, позже будет поправлена под Carbon AS 3. Тем не менее, около 70% инструкций подходят и для AS 3. h1. Как ускорить первичную настройку Carbon AS 3
|
Если пользователи не могут получить доступ к сети перед обращением в суппорт где вам помогут, можно сэкономить время отвлекаемых разработчиков выполнив следующие шаги.
|
Вообще все связанное с Carbon AS стоит изучать выполнив смену корня, все команды ниже написаны с учётом того, что вы уже сделали это:
|
{color:#000000}{*}1. Узнать информацию о авторизованных пользователях{*}{color}
|
{code}
|
chroot /app/carbon_as {code} h2. 1. Узнать информацию о авторизованных пользователях {code}
|
cat /var/lib/nas_users.dat {code}
|
... В этом файле записаны строки в виде: ip \| snat \| negbal \| mac Как минимум IP пользователя должен быть записан в этом файле, если нет - переходим на следующий шаг. h2. 2. Проверить команды от биллинга {code}
|
tail -100 /var/log/ideco_nasd.log {code}
|
если вы используете Ideco ACP 3 в качестве биллинга, либо биллинга.
|
{code} tail -100 /var/log/carbon_nasd.log {code} Если вы используете Carbon Billing 5.
|
|
В этих файлах Туда записываются все передаваемые на маршрутизатор команды, а также ошибки в случае если что-то идёт не так.
|
Если команд нет, то переходим на следующий шаг.
|
...
|
Если команды есть, то проверьте, что данные которые приходят соответствуют действительности. Скорее всего проблема в настройках тарифа или данных пользователя.
|
h2. 3. Проверить настройки управления NAS'ом
|
Проверьте данные в локальном меню связанные с настройкой маршрутизатора.
|
... Проверьте, правильно ли указан IP адрес биллинга, совпадает ли Radius Secret. Проверьте, что не напутали с портами аккаунтинга и авторизации. Если на вид всё верно, то переходим на следующий шаг. h2. 4. Если команды были - проверьте наличие правил Для примера IP пользователя: 10.0.201.100 Проверьте, что пользователю разрешён доступ к сети {code} iptables -nvL | grep -w 10.0.201.100 {code} Проверьте что есть SNAT, если он используется, либо, что его нет, если используются белые IP {code} iptables -t nat -nvL | grep 10.0.201.100 {code} Проверьте маркировку пакетов пользователя для шейпера {code} iptables -t mangle -nvL | grep 10.0.201.100 {code}
|
Если один из этих пунктов даёт не те результаты, которые ожидаются, то нужно сперва проверить параметры пользователя в биллинге, если с ними всё в порядке, то связаться с технической поддержкой.
|
В новых версиях вы можете воспользоваться скриптом {code} /usr/local/ics/support/as_debug.sh --help {code}
|
h2. 5. Проверка доступа до биллинга
|
... Самое банальное что можно сделать (но в 80% случаев этого и достаточно): проверить доступ до биллинга ping'ом.
|
Для примера IP адрес биллинга будет равен 10.0.0.10 {code}
|
ping -c 4 10 10.0.0.10
|
{code} Если ответы есть, то это ещё не гарантия, что доступ полноценный.
|
... Проверьте следующее: {code} arping -c 1 -I Eeth0 10.0.0.10 {code} После \-I должно идти имя внешнего интерфейса. h2. 6. Проверьте что трафик вообще идёт {code}
|
tcpdump -nvi any host 10.0.0.10 {code}
|
Должны идти пакеты на 44, 1812, 1813 порты. и 9996 порты.
|
|
Для того чтобы заставить их команды идти - попробуйте переподключить какого-нибудь пользователя с IP авторизацией.
|
h2. Для PPTP-пользователей
|
... Вы можете посмотреть что происходит с плагином авторизации по Radius: {code} strace -s 500 -f -p `pidof pptpd` {code} Для того чтобы читать вывод трасировщика - придётся немного потренироваться. В первую очередь стоит обратить внимание на коннекты до биллинга - если они возвращают 0 (Timeout), то это проблема с сетью, либо Radius-сервер не слушает на указанном в настройках порту. Проверьте это командой {code} ps aux | grep radius {code} на биллинге. Если Radius не запущен, то само собой его надо запустить, предварительно узнав причину по которой он не запущен. h2. Для пользователей с IP авторизацией На биллинге и на самом Carbon AS запустите {code} tcpdump -nvi any udp port 44 {code} Отключите абонента в биллинге. Должен уйти 1 или более пакетов с биллинга и точно такое же до AS. Если пакеты не уходят - нужно опять же проверить запущен ли демон eventd {code} ps aux | grep event {code} h2. Примеры работы с tcpdump {code} tcpdump -nvi any udp port 9996 # проверка netflow tcpdump -nvi any port 1812 or port 1813 # проверка Radius tcpdump -nvi any udp port 44 # проверка посылки команд {code} h2. Отладка Radius Возможно пользователи просто не авторизуются по Radius. Для того чтобы понять что происходит - нужно запустить Radius сервер на биллинге в режиме дебага: {code}
|
./radiusd -X {code}
|
|
h2. Логи
|
... Если пользователю при авторизации по VPN показываются ошибки - стоит посмотреть лог /var/log/ppp.
|