いんくらyochさんの日記

興味あることの忘備録

XASTIR 特定デジのパケット廃棄

関東エリアでのi-gateの新規運用は過密状態のため難しいところ。でも、近隣で拾ってくれない不感地域があると立てたくなるのも、APRSの趣旨とは外れますが人情と言うもの。
UI-Viewではデジの段数を0とすることで直接波のみゲートすることができるようですので、xastirでも同じようなことができないかソースを調べていましたとろこ、igate.c内のoutput_igate_rf関数でNOGATEデジパスを廃棄する条件文に特定デジを追記してやれば、そのデジパスをゲートせず廃棄します。
■元

if ( (strstr(path,"NOGATE") != NULL)

(strstr(path,"OPNTRK") != NULL) // OpenTrac Packet
(strstr(path,"OPNTRC") != NULL) ) { // OpenTrac Packet

■新

if ( (strstr(path,"NOGATE") != NULL)

(strstr(path,"OPNTRK") != NULL) // OpenTrac Packet
(strstr(path,"OPNTRC") != NULL) // OpenTrac Packet
(strstr(path,"XXXXXX-1") != NULL) ) {

上記、新のようにパス内に含まれるデジピータコールサインやデジパスを条件文として追加してやって、再コンパイルすると条件に沿うものは廃棄され、APRS-ISへ流さないようになります。この変更で広域デジ経由や近隣のデジ経由のパケット廃棄することで、直接波のみとなってネット側の負荷を軽減でき、且つ不感地帯の補完もできるかなと思ってます。

修正後の再コンパイルは以下で。
make
su
make install
chmod 4555 /usr/local/bin/xastir
exit