mish.myds.me … dev

https://mish.myds.me/wordpress/dev/ へ移行しました.

広告

WN-AC1167R 追加

アクセスポイントとして WN-AC1167R を追加.
単に接続するだけならば,特に難しい部分はなし.
最初「APモード」としてうまく認識していなかったのか,AC アダプタを抜いて再起動.
ちょっと失敗したのが,有線 LAN が 100 M .
 パッケージの「有線 Giga」は誤解を招きそうと思う(私もちゃんと見てなくて勘違い).
 型番で G が付くものが有線 LAN を含む全ポート Gigabit 対応?


無線 LAN のチャンネルや帯域を設定は,AC1167R の IP アドレスが必要になる.
Magical Finder が必要で 107SH にインストール(Moto G5 は Android 7.0 のため?動作しない).

ここで表示される IP アドレスを PC のブラウザに入力して設定.


AC1167R に WD Cloud をつなげたので,次のアラートが…
 イベント タイトル:10/100 でイーサネット ポート %1 に接続されています
 イベント タイトル:ネットワーク リンク停止
再起動したりしているので当然だが,ある時からほぼ毎日 2:00 と 9:00 にメールが来るようになっていた.
原因はルータ BL190HW の「省エネモード設定」で,とりあえず無効に.


設置してしばらくして気付いたのが,Web サーバが外からアクセスできなくなっていた.
LAN 内からは問題ないので,Web サーバの再起動と,ルータ BL190HW を再起動.

NW71 追加

airdisk NW71 を追加.

よく調べなかったからではあるが,’A+Disk’ は,Moto G5 では動作しない.
iodata のサイトのマニュアルのダウンロード先から,pdf を入手.
http://www.iodata.jp/lib/manual/pdf2/airdisk.pdf
または,アイオープラザの airdisk 紹介ページから.
https://www.ioplaza.jp/select/airdisk/pdf/airdisk-h03.pdf


pdf によると HiDisk に変更されている.
Wi-Fi 接続した状態で,192.168.222.254 にアクセスすると,

初期状態ではパスワードがかかっていないので SSID のパスワードを設定.
ブラウザからの Basic Setting からでも入れる.

BRD-UT16WX その後

今年の初めの頃に BRD-UT16WX を追加したが,BD が見れなくてあまり活用できていなかった.
今日 CD を焼きたいと思い,IOPortal に行くと WinDVD が新しくなっている.
これをダウンロードしてインストール,
実行すると前回再生できなかった BTTF が見られるようになった.

外からの接続が不安定

朝見ると,http://itl.mydns.jp や http://iwao.synology.me などへの外からの接続ができなくなっていた.
外へのアクセスは特に問題なさそう.
先日 DS116 を追加して,いろいろいじったためと思ったが…
DS115j のログにエラーがある.
Error システム 2017/09/27 03:24:25 SYSTEM System failed to register [27.92..] to [xxx.jp] in DDNS server …


5 年以上前から 121.108…. から変更されなかったので,丁度良いと思っていたのに…
IP が変わったことにより,何かの整合性が取れてないのかもしれない.
ルータ,アクセスポイント,外からアクセスできるサーバなど,何度か再起動して落ち着いた?

DS116 追加

1 年近く DS115j を使用してきたが,想定していた以上の利用になりちょっとパワー不足に.
特に,週末実行している Antivirus Essential が動き出すと DSM などもうまく入れないこともある.


DS116 と DS115j の比較性能を参考にして DS116 に.
データが全く同じではないので単純には比べられないが,26000 個のスキャン 6 時間が 15 分程度に.


DS115j から DS116 へのファイルのコピーでの状態.

DS115j では,CPU とメモリがボトルネックになっている様であるが,DS116 ではまだ余裕がありそう.


2017/09/29
ストレージや,DS116 では 40 ℃ 前後だが,DS115j の本体?の温度は 50 ℃ 位になっている.

CHttpFile でのアップロード

mish.myds.me


CHttpFile を使用したアップロードのコードを整理.
サーバ側は先日の php と同様.



//*******************************************************************************
//	send request define
//	Create	:	2017/08/28
//*******************************************************************************
#define	C_CRLF			_T("\r\n") ;
#define	CT_ct_mp_fd_b_		_T("Content-Type: multipart/form-data; boundary=")
#define	CT_boundary__		_T("--")
#define	CD_cd_f_d_n_		_T("Content-Disposition: form-data; name=")
#define	CD_cd__fn_		_T("; filename=") ;
#define	CT_ct_a_o_s		_T("Content-Type: application/octet-stream")

//*******************************************************************************
//	make send data
//	Create	:	2017/08/28
//*******************************************************************************
inline	v_char	Make_send_data	(LPCTSTR upFile,LPCTSTR ___boundary)
{
	v_char	up_Data = v_c_LoadText(upFile) ;
	v_char	sndData ;
	{
		tstring	ct_boundary	= ___boundary ;
		tstring	file_img	= ::QuotM_Add(_T("file_img")) ;
		tstring	fileName	= ::QuotM_Add(::Path_GetName(upFile)) ;
		tstring	dataPre ;
		tstring	dataPst ;
		dataPre+=	CT_boundary__	+	ct_boundary				+	C_CRLF ;
		dataPre+=	CD_cd_f_d_n_	+	file_img	+	CD_cd__fn_	;
		dataPre+=							fileName	+	C_CRLF ;
		dataPre+=	T_ct_a_o_s								C_CRLF ;
		dataPre+=										C_CRLF ;
		dataPst+=										C_CRLF ;
		dataPst+=	CT_boundary__	+	 ct_boundary	+	CT_boundary__		C_CRLF ;
		v_char	vc_pref = ::To_v_char(::To__string(dataPre.c_str())) ;
		v_char	vc_post = ::To_v_char(::To__string(dataPst.c_str())) ;
		sndData.insert(sndData.end(),vc_pref.begin(),vc_pref.end()) ;
		sndData.insert(sndData.end(),up_Data.begin(),up_Data.end()) ;
		sndData.insert(sndData.end(),vc_post.begin(),vc_post.end()) ;
		}
	#ifdef	_DEBUG
	{
		::i_Dump(sndData,(::Path_GetName(upFile)+_T(".txt")).c_str()) ;
		}
	#endif
	return	sndData ;
	}

//*******************************************************************************
//	upload
//	Create	:	2017/08/28
//*******************************************************************************
inline	bool	UploadFile	(LPCTSTR svrName,LPCTSTR php,LPCTSTR upFile)
{
	{
		if (::File_IsNothing(upFile))			{	return	false ;		}
	//	if (::File_GetSize  (upFile) > 2048*1024)	{	return	false ;		}
		}
	tstring	head ;
	v_char	sndData ;
	{
		tstring	___boundary = _T("-----UpFile__2017_08_30") ;
			___boundary = _T("-----") + ::Path_GetName(_T(__FILE__)) + _T("__") + ::Now_Format(_T("%H%M%S")) ;
		head	= CT_ct_mp_fd_b_	+ ___boundary ;
		sndData = Make_send_data(upFile,  ___boundary.c_str()) ;
		}
	tstring	serverN = svrName ;
	tstring	portStr ;
	{
		v_tstring	strAry = ::String_Split(svrName,false,_T(":")) ;
		if (strAry.size() >= 2) {
			serverN = strAry[0] ;
			portStr = strAry[1] ;
			}
		}
	INTERNET_PORT	nPort = 0 ;
			nPort = ::ttou2(portStr) ;
	tstring		userAgent = _T("drop_up") ;
			userAgent = ::Path_GetName(_T(__FILE__)).c_str() ;
	#ifdef	_WIN32
	{
		userAgent = ::Path_GetName(::i_GetModuleFileName()) ;
		{
			tstring	osVer	= _T("Windows NT ") + ::To_tstring_rz(::GetWinVer_exe()) ;
				osVer	+=  tstring(_T(" "))+ Bracket_Add(::GetWinVerStr_exe(),_T('(')).c_str() ;
			userAgent += _T(" ") + osVer ;
			userAgent += EXE_AddVerBuildStr() ;
			}
		}
	#endif
	CInternetSession	session(userAgent.c_str()) ;
	CHttpConnection*	pServer = NULL ;
	CHttpFile*		pFile = NULL ;
	DWORD			dwStatus = 0 ;
	try	{
				pServer = session.GetHttpConnection(serverN.c_str(),nPort) ;
				if (pServer == NULL)				{	return	false ;		}
			{
				CString	headStr = head.c_str() ;
				pFile = pServer->OpenRequest(CHttpConnection::HTTP_VERB_POST,	php) ;
				if (pFile == NULL)				{	return	false ;		}
				pFile->SendRequest(headStr,(LPVOID)(&sndData[0]),DWORD(sndData.size())) ;
				pFile->QueryInfoStatusCode(dwStatus) ;
				}
			{
				delete	(pFile) ;
				delete	(pServer) ;
				}
		}
	catch	(CInternetException* e) {
		CString	errMsg ;
		e->GetErrorMessage(errMsg.GetBuffer(1024),1024) ;
		errMsg.ReleaseBuffer() ;
		std::tout << LPCTSTR(errMsg) << std::endl ;
		return	false ;
		}
	session.Close() ;
	return	true ;
	}

//*******************************************************************************
//	upload files
//	Create	:	2017/08/29
//*******************************************************************************
inline	bool	UploadFiles	(c_v_tstring& upFiles)
{
	v_tstring	svr_php = ::UF_get_server_php() ;
	tstring		serverN = svr_php[0] ;
	tstring		phpName = svr_php[1] ;
	for (size_t index=0 ; index<upFiles.size() ; index++) {
		tstring	upFile = upFiles[index] ;
		if (::File_IsNothing(upFile))		{	continue ;		}
		if (!::UploadFile(serverN.c_str(),phpName.c_str(),upFile.c_str()))	{
			return	false ;
			}
		}
	return	true ;
	}