Cloudflare�A�Z�L���A�ōő��Ȉ�ʌ���DNS�T�[�r�X�u1.1.1.1�v�J�n
» 2018�N04��02�� 11��33�� ���J
�@��CDN����Cloudflare��4��1���i���n���ԁj�A�R���V���[�}�[��������DNS�T�[�r�X�u1.1.1.1�v�𗧂��グ���Ɣ��\�����B�u�C���^�[�l�b�g�̍ő��Ńv���C�o�V�[����ɍl�����v�T�[�r�X�Ƃ��Ă���B
�@DNS�Ƃ́AWeb�T�C�g��URL��IP�A�h���X�ɕϊ����邱�ƂŖړI�̃T�C�g�ɐڑ�����d�g�݁B��ʂɂ��̕ϊ���ISP��l�b�g���[�N��ƂȂǂ��Ǘ�����DNS�T�[�o���S���Ă���B����Cloudflare�������グ���̂́A��Google��2009�N�ɃX�^�[�g�����uGoogle Public DNS�v �Ɠ��l�́A���[�U�[����DNS���]���o���B
�@DNS�͒ʐM�f�[�^���Í�������Ă��Ă��A���[�U�[�̃l�b�g��̂��ׂĂ̖K�◚���iIP�A�h���X�̃��O�j��ێ����Ă���A�T�[�o�^�c�������̋C�ɂȂ���̃f�[�^�𗘗p�ł���B
�@1.1.1.1�̗����グ�́ACloudflare�̃~�b�V�����ł���u���ǂ��C���^�[�l�b�g�̍\�z�v�̈�Ƃ����B���Ђ̃r�W�l�X���f����Google���Facebook�̂悤�ȃ��[�U�[�̃f�[�^�����W���Ă�����^�[�Q�e�B���O�L���Ɏg���悤�ȃr�W�l�X���f���ł͂Ȃ��̂ŁA�v���C�o�V�[��D�悵�A�ۏł���Ɛ����B
�@���̃T�[�r�X�ł́A���[�U�[�̖K�◚����24���Ԉȓ��ɍ폜���邱�ƂŃv���C�o�V�[��ی삷��B
�@�܂��A���Ђ̋Z�p�ɂ��ADNS�T�[�r�X�Ƃ��Đ��E�ő������������Ƃ��Ă���BDNS���j�^�[��DNSPerf���A1.1.1.1�𐢊E�ő��Ƀ����N�t�������B
�@1.1.1.1�Ƃ������̂́A���T�[�r�X�Ŏg��IP�A�h���X���B��ʃ��[�U�[����DNS�T�[�r�X�ł́A�o���₷��IP�A�h���X���d�v�iGoogle Public DNS�́u8.8.8.8�v�Ɓu8.8.4.4�v�j�B����IP�A�h���X���g�����߂ɁA���Ђ͂��̃A�h���X��ۗL����A�W�A�����m�E�I�Z�A�j�A�S���̒n�惌�W�X�g���AAPNIC�iAsia Pacific Network Information Centre�j�Ƌ��͂����B
�@APNIC���ۗL����1.1.1.1��1.0.0.1�́A�����̐l���e�X�g�ȂǂŃ����_���ȃV�X�e���ɓ��͂��邽�߁A�₦����ʂ̖��Ӗ��ȃg���t�B�b�N�ɂ��炳��Ă���Ƃ����BCloudflare��APNIC�ւ̂��������g���t�B�b�N����M���Ē������邱�Ƃ����������ɁA1.1.1.1���g����DNS���]���o��\���o�AAPNIC������ɓ��ӂ����B
�@���Ȃ݂ɁA�G�C�v�����t�[���ł���A�C�[�X�^�[�̓��j���ł�����4��1���ɐV�T�[�r�X���\���s�����̂́A1��4���ԃT�[�r�X�����A���Џ��̃R���V���[�}�[�����T�[�r�X�Ƃ��ăC���p�N�g��^�������������炾�ƁA�}�V���[�E�v�����XCEO�͌��B
�@���T�[�r�X�̎g�����ɂ��ẮA�����T�C�g ��OS�ʁiiOS�AAndroid�AmacOS�AWindows�ALinux�A���[�^�j�̒��J�Ȑ���������B
Copyright © ITmedia, Inc. All Rights Reserved.
';
e_dlv.innerHTML = html;
adRequest({position:dlv_pos,dom:true});
}else if(ad_type === 'gam'){
var html = '
';
e_dlv.innerHTML = html;
refreshGam('InArtSpecialLink');
}else if(ad_type === 'logly'){
var html = '
';
e_dlv.innerHTML = html;
loglySet(g_id);
}else if(ad_type === 'google'){
var html = '
';
e_dlv.innerHTML = html;
googletag.cmd.push(function(){
var slot8 = googletag.defineSlot('/43042345/nlab_artinsert_RT',[[336,280],[300,250],'fluid'],'div-gpt-ad-1551176482959-0').addService(googletag.pubads());
googletag.pubads().enableSingleRequest();
googletag.enableServices();
googletag.display('div-gpt-ad-1551176482959-0');
googletag.pubads().refresh([slot8]);
});
}
};
var insert_ok = function(_target,_str){
var clearfix = d.createElement('div');
clearfix.className = 'colBoxClear';
if(ad_float_fix){
e_body.insertBefore(e_dlv,_target);
e_body.insertBefore(clearfix,_target.nextElementSibling);
}else{
e_body.insertBefore(e_dlv,_target);
}
set_dlv();
};
var insert_ng = function(_str){
e_dlv.style.display = 'none';
};
var main = function(){
var e_nodes = e_body.childNodes; // BODY �����q�v�f
var e_tags = []; // BODY �����^�O
var p_num = []; // BODY ���� P �^�O�ʒu
var p_target_num; // �g�}����ʒu
var o_float = {}; // ��荞�ݗv�f
var o_this = {}; // �A�N�e�B�u�^�O
var o_next = {}; // �A�N�e�B�u�^�O�̎��̃^�O
var flag_insert = 0; // �}���t���O
// ��荞�ݗv�f�`�F�b�N
var check_float = function(_e){
var e = 0;
if(_e.id.match(/^col\d{3}(l|r)$/)){
e = _e;
}
return e;
};
// �v�f�� Y ���W�ƍ����̍��v�l
var get_element_y = function(_e){
var ey = 0;
var eh = _e.offsetHeight;
while(_e){
ey += _e.offsetTop;
_e = _e.offsetParent;
}
return ey + eh;
};
var check_ptag = function(_e){
var e = 0;
if(_e.tagName && _e.tagName === 'P'){
e = _e;
}
return e;
};
var try_insert = function(){
p_target_num = Math.floor(p_num.length / 2) - 1;
if(p_target_num >= _maxrange) p_target_num = _maxrange;
if(dis_con) p_target_num = 0;
for(var i = p_num[p_target_num]; i < e_tags.length; i++){
o_this.e = check_ptag(e_tags[i]);
if(o_this.e){
o_next.e = check_ptag(e_tags[i + 1]);
if(o_next.e){
if(!o_float.e || check_float(e_tags[i - 1])){
o_float.e = check_float(e_tags[i - 1]);
o_float.n = i - 1;
}
if(o_float.e && o_float.n < i + 1){
o_float.y = get_element_y(o_float.e);
o_this.y = get_element_y(o_this.e);
set_line(o_float.y,'red');
set_line(o_this.y,'blue');
if(o_float.y < o_this.y){
flag_insert = 1;
insert_ok(o_next.e,_threshold + ' �p���ȏ��荞�݂���');
break;
}
}else{
flag_insert = 1;
insert_ok(o_next.e,_threshold + ' �p���ȏ��荞�݂Ȃ�');
break;
}
}
}else{
o_float = {};
}
}
if(!flag_insert){
insert_ng('�}���ʒu�Ȃ�');
}
};
// �S�q�v�f����^�O�̂ݔz��ɓ����
for(var i = 0; i < e_nodes.length; i++){
if(e_nodes[i].tagName){
e_tags.push(e_nodes[i]);
}
}
// �S�^�O���� P �^�O�ʒu��z��ɓ����
for(var i = 0; i < e_tags.length; i++){
if(e_tags[i].tagName === 'P') p_num.push(i);
// �ŏ��̉�荞�ݗv�f���i�[
if(!o_float.e){
o_float.e = check_float(e_tags[i]);
o_float.y = get_element_y(o_float.e);
o_float.n = i;
}
}
if(p_num.length >= _threshold){
try_insert();
}else{
insert_ng('P �^�O ' + _threshold + ' �ȉ�');
}
};
if(e_body){
main();
}else{
insert_ng('�L���{���Ȃ�');
}
})(document,4,5);