스팸신고결과

요즘 계속들어 불필요한 이메일 알림을 많이 받았습니다.

그런데 수신거부 버튼을 누르면 로그인 페이지만 나올 뿐 수신거부창이 나오지않는 광고메일때문에 이를 갈던도중 불법스팸신고센터에 간편신고가 가능한것을 보고 시도해봤습니다.

2주전쯤 처리상태가 소명자료요청으로 바뀌더니 처음 접수한지 한 달 가량이 지나서 드디어 답변이 왔네요.

spamcop

메일관리 대충대충 날로먹던 아x리버, 국x은행의 시스템관리자분 곤란하시겠어요. 하지만 진작에 조치를 취했어야죠.

http://www.spamcop.or.kr 이곳에서 신고하시면 됩니다. 처리가 바로 되는건 아니지만 기다리시면 결과를 알려줍니다.

US bank fees are ridiculous

Seriously, this is nonsense.

I forgot that I have a Paypal subscription that drew money from my savings account.
But I keep all my balance in the checking account so it kept draining the savings account balance and it eventually ran out.

Then I received $35 fee for Non Sufficient Funds.

bankscam

I did have overdraft protection linked to my checking account but I just now figured that it only works savings->checking and not vice versa.

Meh, one must be out of mind to think that the bank needs to collect that money because there is more stuff to be reconciled.
It might have been the case 100 years ago but it is plain scam to collect the very same amount of money in 21th century where computers do all the work.
And the trasaction is supposed to go through but with new laws they made it impossible to pay online services by overdraft account.
So that means I lost $35 for completely nothing.

Also, I discovered it only because I received a mail from Paypal for failed transaction notice. Otherwise if they didn’t let me know I would have been charged extra late fees.

I had 10 minute talk with the manager but had no success.

Anyway, people say that the overdraft protection service is quite misleading and it causes this to happen.
Proper way to prevent NSF fees is not to enroll in the overdraft protection, but to opt out of it.
In that case the transaction will simply be declined without any extra charges.

Screw you, Bank of America

SKT의 Band 1 (2.1GHz) LTE 정보

대략 3개월 전쯤부터 시내에 나가면 휴대폰에서 LTE가 잡히기 시작했습니다.
제가 지금 쓰는 엑스페리아 A는 LTE 밴드 1,19, 21밖에 지원을 안하는데 국내에서 잡힙니다. 일본전용인 밴드 19, 21은 제외하고 3G에 쓰이는 밴드1의 재활용일것이라 생각했습니다.
국내에는 3,5,8 밴드가 기존에 쓰이는것으로 알려져있습니다.

이번주부터 드디어 집에서도 새로운 밴드로 LTE가 사용이 가능해지더군요.

계측장비를 이용해서 어떤망인지 직접 확인한 결과를 올립니다. 제 예상대로 밴드 1이 맞습니다.

lte

자세하게 보고싶으신 분은 클릭하시면 원본화질로 보실 수 있습니다.

여기서 일반 사용자분들이 괄목할 정보들을 정리해 보자면..

우선 대역폭이 20MHz가 아닌 10MHz입니다.
EARFCN 150(2.125GHz Downlink) 한가지만 잡히고 다른 주파수는 잡히지 않습니다. 다른 통신사도 잡히지 않습니다.
레퍼런스 파워가 높지 않습니다. 12dBm에다가 10MHz의 블록수를 곱하면 enodeb에서 2W정도로 신호를 송출중이란 뜻인데 해외에 비해 확실히 망 구조가 조밀합니다.
하지만 일부 기지국만 2.1GHz를 가동중인듯 합니다.

LTE는 WCDMA와 같이 1.92MHz의 배수로 샘플링을 해야합니다
후.. 전에 장비에 전원을 잘못 연결하는 바람에 외장 GPS VCTCXO가 고장난 관계로 2의배수에서 소프트웨어 리샘플링을 하니 스캔하는데 시간이 오래 걸리네요.
조만간에 61.44MHz TCXO를 구입해서 지역별로 측정을 해봐야겠습니다.

지역별로 제가 다녀본 바로는 광역시 이상 시내쪽은 거의 잡힙니다.

대구 부산은 외곽도 어느정도 커버되고 있는듯 합니다.

그리고 요즘들어 몇몇 분이 호소하시는 수신률 문제도 이 때문으로 보입니다.
2.1ghz는 기지국이 기존망만큼 활성화가 되어있지 않다보니 이쪽으로 휴대폰이 접속되게 되면 수신률이 낮아 보이는 것입니다.
수신률이 캐리어 전체 수신률의 평균을 내는게 아닌 현재 접속되어있는 하나의 기지국 기준으로 계산을 하나 보니 생기는 현상입니다.
하지만 그렇다고 해서 기존 기지국이 사라지는게 아니고 수신률이 일정수준 이상으로 약해지면 기존망으로 핸드오버를 시도하니 크게 걱정하실 필요는 없으실듯 합니다.
하지만 잦은 핸드오버는 딜레이를 유발하고 배터리를 빨리 소모합니다.

Kicking spammers out of your Asterisk server

If you have your asterisk server connected to the public internet, there always will be some bad boys trying to brute-force into your PBX.

A few months before I found my asterisk server dead. Looking through the logs I was surprised to find that it was the spammers trying to brute force the password, eventually filling up the entire disk with error logs and crashing the server. Unfortunately that server operated on a single partition scheme with everything allocated for / .


[Sep 12 20:24:02] NOTICE[28190] chan_sip.c: Registration from '"249" ' failed for '37.8.53.84:10937' - No matching peer found
[Sep 12 20:24:02] NOTICE[28190] chan_sip.c: Registration from '"249" ' failed for '37.8.53.84:10937' - No matching peer found
[Sep 12 20:24:21] NOTICE[28190] chan_sip.c: Registration from '"497" ' failed for '37.8.53.84:5060' - No matching peer found
[Sep 12 20:24:21] NOTICE[28190] chan_sip.c: Registration from '"497" ' failed for '37.8.53.84:5060' - No matching peer found

Yesterday same thing happened again, but luckily I found it early enough to block it before it crashes the server.


iptables -I INPUT -s 37.8.53.84 -j DROP

I used iptables to filter out those garbage packets.
To view the blocked ip list use the following command.


iptables -n -L

It can be rather annoying when it comes to a production server where there are so many logs to inspect.
I recommend creating a script to automate the tasks if that is the case.

Setting arbitary destination IP for RTP packets (NAT mangling)

Gosh, those VoIP specs need to be more friendly to NAT!

In short, as RFC standards does not state anything about NAT, the server assumes that the IP included with SDP packets is the true WAN IP of the client, which is not the case in NAT scenarios and leads to problems.
This is a temporary workaround for getting voice packets go through NAT in OpenBSC. It would fix the one way audio that many people are experiencing.
I might try branching out from the main code for proper NAT support. IMO it is pretty riciculous to assume that picocells are connected to the internet directly, haha.

NAT mangling does not work with translated ports, so you need to turn off port translation in some routers.

Edit the following code

abis_rsl.c :

static void ipac_parse_rtp(struct gsm_lchan *lchan, struct tlv_parsed *tv)
{
	struct in_addr ip;
	uint16_t port, conn_id;

	if (TLVP_PRESENT(tv, RSL_IE_IPAC_LOCAL_IP)) {
		ip.s_addr = tlvp_val32_unal(tv, RSL_IE_IPAC_LOCAL_IP);
		DEBUGPC(DRSL, "LOCAL_IP=%s ", inet_ntoa(ip));
		lchan->abis_ip.bound_ip = ntohl(ip.s_addr);
	}

Add a section to replace the IP with proper one.

	if (TLVP_PRESENT(tv, RSL_IE_IPAC_LOCAL_IP)) {
		ip.s_addr = *((uint32_t *) TLVP_VAL(tv, RSL_IE_IPAC_LOCAL_IP));

		if (strcmp(inet_ntoa(ip), "/*internal IP*/") == 0)
		{
			DEBUGP(DRSL, "Overwriting internal IP to a real one\n");
			inet_aton("/*external IP*/", &ip);
		}

		DEBUGPC(DRSL, "LOCAL_IP=%s ", inet_ntoa(ip));
		lchan->abis_ip.bound_ip = ntohl(ip.s_addr);
	}

You should replace the internal IP with the internal IP of the nanoBTS. And external IP with the router’s IP as seen from the BSC

SGSN temporary MCC/MNC authentication hack

From gprs_gmm.c


                        char mccmnc[16];
                        snprintf(mccmnc, sizeof(mccmnc), "%03d%02d", ra_id.mcc, ra_id.mnc);
                        if (strncmp(mccmnc, mi_string, 5) &&
                            (sgsn->cfg.acl_enabled &&
                             !sgsn_acl_lookup(mi_string))) {
                                LOGP(DMM, LOGL_INFO, "Rejecting ATTACH REQUESET IMSI=%s\n",
                                     mi_string);
                                return gsm48_tx_gmm_att_rej_oldmsg(msg,
                                                                GMM_CAUSE_GPRS_NOTALLOWED);
                        }

It needs to be commented out to allow roaming IMSIs to receive PDP contexts

Using an ICC profile on linux

I had to find a way to use monitor ICC profiles on my linux box.

After a bit of researching I found that there is a nice application called ‘dispwin’ which is included in argyll package

sudo apt-get install argyll

dispwin /path/to/the/profile.icc

Easy.
In the same way you can write a bash script if you want to execute it on startup. I added the command to the end of /etc/mdm/Init/Default for Linux Mint 17

UPDATE: for Ubuntu MATE I added the command to /usr/lib/lightdm/lightdm-greeter-session

Geforce vs Intel Graphics SPECviewperf benchmark

SPECviewperf 11

This is a quick benchmark of mobile GPUs that I did recently with my new laptops. CPU performance is matched to i7-4700 and 8GB RAM is given for all tests. Looking at the results, it was quite surprising to find that the Intel HD 4600 performed on par with discrete graphics on many tests, and even superior when it came to SolidWorks and TcVis where it outperformed GTX860M. Especially in TcVis the Intel graphics pulled off more than double FPS compared to nvidia graphics. And it operated much cooler, keeping the fan at medium speed whereas using nvidia graphics caused the fan to roar like an engine. I suppose that the Intel graphics are more capable of handling floating point calculations than Geforce,  similar to how Quadros work. Sadly the Intel graphics threw an error and crashed on Catia tests and showed poor performance on Ensight tests, but speculating about the superior performance it showed on other tests, I think choosing Intel graphics can also be a good choice depending on the type of work you do. In addition, if you are using laptops with switchable graphics you might get rid of a big amount of heat caused by the discrete GPU.

A wild manatee